سرفصل های دوره
فصل اول: مقدمات
کدام زبان برنامه نویسی را باید یاد بگیرم؟
چرا باید زبان PHP را یاد بگیرم؟
PHP چطور کار میکند؟
نصب نرم افزارهای موردنیاز
چطور بهترین استفاده را از دوره ببریم + فایل ها و تمرینات
اولین کد PHP
متغیرها
عمیق شدن در متغیرها و ریکفتور کردن کدها
عبارات شرطی
دیتاتایپ ها (Data Types)
آرایه ها
حلقه زدن در آرایه ها
Associative Arrays
آرایه های تودرتو
فصل دوم: ساختارهای کنترلی
مقایسه و شرط
حلقه ها
توابع (functions)
بهبود تابع filter
جداسازی view و logic
توابع داخلی php
ternary operator
فصل سوم: ساخت وب سایت دینامیک
ساخت یک سایت استاتیک
حذف کدهای تکراری
دریافت آدرس Url فعلی صفحه
نمایش صفحه فعلی در منو
تعریف تابع برای دیباگ کدها
آشنایی با فایل htaccess
ساخت یک router ساده
دستورات switch، match و lookup tables
constant ها و redirect
آشنایی با دیتابیس
ساختار دیتابیس پروژه
کار با Query ها در دیتابیس
اتصال به دیتابیس با php
صفحه جزئیات پست ها
نمایش پست
رخنه امنیتی SQL Injection
ریفکتور کدهای دیتابیس
فصل چهارم: شی گرایی در PHP
شی گرایی (OOP) چیست؟
Constructor
Access Modifiers
استفاده از Constant در کلاس ها
متدهای استاتیک
استفاده از کلاس PDO برای اتصال به دیتابیس
ساخت کلاس Database
فصل پنجم: ساخت یک اپلیکیشن CRUD
ستاپ کردن اپلیکیشن CRUD
ساختار دیتابیس پروژه، ایندکس ها و کلیدهای خارجی (foreign keys)
نمایش note ها
اعتبارسنجی (authorization)
HTTP Status Codes
کار با فرم ها در php
متدهای HTTP
insert در دیتابیس و escape کردن ورودی ها
کمی ریفکتور!
Validation ساده
ساخت کلاس Validator
update کردن یک note
حذف یک note
قواعد نام گذاری Resourceful (Restful)
فصل ششم: مدرن کردن پروژه های PHP
بازتعریف مجدد ساختار پروژه
ادامه تغییرات ساختاری پروژه
Autoload کردن کلاس ها
namespace ها در PHP
سفر به اعماق namespace ها
هندل کردن سایر متدهای HTTP Request
پیاده سازی متدهای HTTP در فرم ها
اعمال قوانین Resourceful بر روی ساختار پروژه
فصل هفتم: نشست ها (Sessions) و احراز هویت (Authentication)
Session چیست؟
ساخت ui فرم ثبت نام
register کردن کاربر
استفاده از اطلاعات ارسال شده در فرم register
تامین امنیت رمزعبورها در php
ساخت middleware برای محدود کردن دسترسی غیرمجاز
استفاده از middleware
تبدیل middleware به lookup table
ساخت صفحه login
پیاده سازی logout
پیاده سازی قانون PRG
نمایش اطلاعات session به صورت flash
ساخت کلاس Session
نمایش اطلاعات قبلی input ها
ریفکتور به کلاس LoginForm
ادامه ساخت کلاس LoginForm
ساخت کلاس Authenticator
فصل هشتم: ناگفته های PHP
معرفی فصل
Type Casting
Type Juggling
Type Hint و Static Types
Union Types
Short Circuiting
predefined constants و magic constants
حذف متغیرها با unset
نحوه استفاده از مستندات php
توابع variadic
named arguments
arrow functions
pass by refrence
کار کردن با فایل ها در PHP
هندل کردن ارورها با بلاک try catch
کار با تاریخ و زمان در PHP
فصل نهم: نگاه عمیق تر به شی گرایی
معرفی فصل
قانون اول شی گرایی: Encapsulation
قانون دوم شی گرایی: Abstraction
قانون سوم شی گرایی: Inheritance (وراثت)
عملکرد this$ در وراثت
تفاوت protected و private
override کردن متدها
قانون چهارم شی گرایی: Polymorphism
قابلیت Constructor Property Promotion
Null Safe Operator
Class Magic Methods
throw exceptions
Custom Exceptions
کار با کلاس DateTime
فصل دهم: نگاه عمیق تر به دیتابیس
معرفی فصل و خلاصه ای از دیتابیس ها
Select Statement
WHERE Clause
اپراتورهای IN، BETWEEN و LIKE
اپراتور IS NULL
مرتب سازی با استفاده از ORDER BY
محدودسازی تعداد نتایج با LIMIT و OFFSET
Inner Join
join چند جدول
Outer Joins
اتصال چند جدول با Outer Joins
ساده سازی join با USING
Aggregate Functions
Group By
فصل یازدهم: Composer، پکیج ها و MVC
کامپوزر (Composer) چیست؟
autoload کلاس ها با کامپوزر
نصب اولین پکیج ها (Collections و Carbon)
دیزاین پترن MVC چیست؟
نحوه کارکرد Model در MVC
تبدیل Model به آبجکت های دیتابیس
ساخت کلاس Base Model
تبدیل کنترلرها به کلاس
بهبود روتر با نصب پکیج AltoRouter
استفاده از url های Seo-friendly
نصب یک Template Engine
کار با Blade
فصل دوازدهم: پروژه بزرگ فروشگاهی - بخش اول
پیش نمایش و معرفی پروژه فروشگاهی
نصب و تنظیمات PHPStorm
تنظیمات ساختاری پروژه
راه اندازی قالب فرانت اند فروشگاه
دسته بندی های فروشگاه
پیاده سازی لیست محصولات
پیاده سازی صفحه جزئیات محصول
افزودن محصول به سبد خرید
ابزارک سبد خرید (Cart Widget)
افزایش تعداد آیتم ها در سبد خرید
صفحه ثبت سفارش
قالب بندی صفحات ورود و ثبت نام
ورود کاربر (Login)
ثبت نام کاربر (Register)
خروج از حساب کاربری (Logout)
View Composer ها و به اشتراک گذاری اطلاعات در view ها
ذخیره سازی سفارش (Order) در دیتابیس
ذخیره سازی Order Item ها
رویه پرداخت سفارش با استفاده از درگاه های پرداخت
اتصال به درگاه پرداخت
تایید تراکنش پرداخت (Verify Payment)
ساخت کلاس Gateway (درگاه پرداخت)
ذخیره کردن اطلاعات پرداخت در دیتابیس
بازگشت از درگاه پرداخت و بروزرسانی سفارش
نمایش نتیجه پرداخت
نمایش جزئیات سفارش بعد از پرداخت
تکنیک جلوگیری از query های اضافی
ساخت order_id رندوم
نمایش پیغام به صورت flash
خالی کردن سبد خرید بعد از پرداخت
فصل سیزدهم: پروژه بزرگ فروشگاهی - بخش دوم (بهبود ساختارها)
دیباگ بهتر با پکیج var_dumper
reusable کردن متد create در مدل ها
reusable کردن متد update در مدل ها
هوشمندسازی فیلدهای timestamp در مدل ها
مرا بخاطر بسپار (remember me)
کلاس Cookie
تامین امنیت بخش Remember Me
ریفکتور کردن کدها
تبدیل تاریخ های میلادی به شمسی
حذف یک آیتم از سبد خرید
استفاده از فایل env
بهبود کلاس Validator
ادامه بازنویسی کلاس Validator
ترجمه خطاهای validation
عبارات باقاعده (Regular Expression) در PHP
قواعد Regex نویسی
تمرین بیشتر با Regex
اعتبارسنجی شماره موبایل با Regex در فرم ثبت نام
جلوگیری از رخنه امنیتی حملات CSRF
رفع مشکلات راهکار فعلی CSRF
فصل چهاردهم: پروژه بزرگ فروشگاهی - بخش سوم (پنل ادمین)
رهگیری سفارش ها
store و update کاربران
مدیریت کاربران
آماده سازی قالب بخش admin
رفع تعدادی از باگ های پروژه
ویرایش سفارش ها
مدیریت سفارش ها
ساخت کلاس Paginator
پیاده سازی صفحه بندی
validation Rule برای منحصر بودن شماره تلفن کاربر
ایمن سازی دسترسی غیرمجاز به بخش ادمین
مدیریت دسته بندی های سایت - لیست دسته ها
ساخت دسته بندی جدید
ویرایش دسته ها
استفاده از یک فرم برای create و edit مدل ها
حذف دسته ها
ساخت resource برای تجمیع روت های Crud
پیاده سازی لیست محصولات و حذف یک محصول
نحوه ساخت کامپوننت (Blade Component)
ساخت محصول جدید
ذخیره و بروزرسانی محصولات
آپلود فایل در PHP
آپلود تصویر شاخص محصولات
تعیین وضعیت ارسال محصول
مشاهده وضعیت ارسال محصول
تعیین آدرس کاربر قبل از ارسال به درگاه پرداخت
ریفکتور کردن بخش سفارش ها
کلاس CSRF
فیلترکردن محصولات
ادامه فیلتر محصولات
اعمال pagination روی محصولات فیلتر شده
رفع مشکل paginaion با query string
فصل پانزدهم: پروژه بزرگ فروشگاهی - بخش چهارم
ساخت داشبورد کاربری
نمایش سفارشات کاربر در داشبورد
نمایش محصولات هر دسته
تغییر رمزعبور کاربر
پیاده سازی محصولات مرتبط
آمارهای پیشخوان مدیریت
فیلدهای اختصاصی محصولات
مدیریت فیلدهای اختصاصی
پیاده سازی بخش دیدگاه ها در محصولات
مدیریت دیدگاه ها
ویرایش و نمایش دیدگاه ها
چند تمرین ساده
تبدیل آیتم های سبد خرید به کلاس CartItem
جستجو در محصولات
اعمال فیلتر روی جستجوی محصولات
استفاده از پکیج Intervention image برای آپلود تصاویر
پیاده سازی گالری تصاویر محصول
ذخیره سازی گالری تصاویر در دیتابیس
میانگین امتیازهای هر محصول
تنظیمات SEO در صفحات اصلی
فصل شانزدهم - Deploy و قراردادن پروژه روی هاست
معرفی فصل
دامنه و هاست چیست؟ + خرید دامنه
تهیه فضای میزبانی فایل های پروژه (Host)
تنظیمات DNS دامنه
آپلود فایلهای پروژه در هاست
ساخت و ایمپورت محتویات دیتابیس
فصل هفدهم: مباحث پیشرفته تر PHP
Enum در PHP
تعریف متدهای دلخواه در Enum
Trait چیست و چرا به آن نیاز داریم؟
ساخت slug های منحصربه فرد
اتوماتیک کردن ساخت Slug با Trait
interface چیست و چه کاربردی دارد؟
استفاده از Interface برای جداسازی Rule ها در اعتبارسنجی
کلاس های Abstract در PHP
نحوه ارتقاء پروژه ها به آخرین نسخه PHP
مقدمه ای بر تست نویسی در PHP
نوشتن اولین تست
تست نویسی برای کلاس Router
تست نویسی کلاس Router - بخش دوم
تست نویسی کلاس Router - بخش سوم
ساخت یک Service Container ساده
رفع مشکلات Service Container
Reflective Programming and Reflection API
پیاده سازی Auto Wiring در DI Container با Reflection API
پشتیبانی از Interface در DI Container
Iterators و Iterable Type در PHP
بهینه سازی مموری با PHP Generators
فصل هجدهم: گام های بعدی
قسمت ویژه - مخصوص دانشجوهایی که دوره را به اتمام رسانده اند
توضیحات
آیا میخواهید با مباحث جدید و مدرن PHP آشنا شوید و مهارتهای برنامهنویسی خود را به سطح حرفهای برسانید؟ دوره آموزشی PHP مدرن ما دقیقاً همان چیزی است که به دنبال آن هستید.
PHP چیست؟
PHP یک زبان برنامهنویسی open-source (منبع باز) و شیءگراست که برای طراحی و توسعه وب سایت ها و اپلیکیشن های تحت سرور استفاده میشود PHP یکی از پرکاربردترین زبان های برنامه نویسی دنیاست بطوریکه بیش از 70 درصد وب سایت های دنیا با زبان PHP توسعه یافته اند.
چرا باید PHP را یاد بگیرید؟
1- PHP یکی از پرکاربردترین و متداول ترین زبان های برنامه نویسی دنیاست و در بسیاری از وب سایت های بزرگ دنیا مورد استفاده قرار گرفته است. محبوبین این زبان به حدی است که 70 درصد سایت های جهان از جمله سایت های ویکی پدیا، فیسبوک و... با استفاده از این زبان طراحی شده اند
2- PHP یک زبان برنامه نویسی سریع، پرقدرت و امن محسوب میشود که کاملا رایگان و open source می باشد.
3- موقعیت های شغلی و بازار کار زبان PHP و فریمورک های آن (مانند لاراول) در ایران و جهان بسیار قابل توجه است. به شکلی که شما با یادگیری PHP میتوانید به سادگی به شکل فریلنسری یا در شرکتهای مختلف، موقعیت های کاری مرتبط با زبان PHP را پیدا کنید.
4- وجود سیستم هایی نظیر وردپرس و فریمورک هایی نظیر لاراول، یک اکوسیستم قدرتمند را برای زبان PHP بوجود آورده است که به راحتی بتوانید پاسخ سوالات و مشکلات خود را در برنامه نویسی با PHP بیابید و از پکیج ها و ابزارهای آماده و فوق العاده آن ها استفاده کنید
5- توسعه سریع وب سایت ها با کمک ابزارهای زبان PHP از جمله مزایای این زبان برنامه نویسی است. شما با آموزش PHP میتوانید هر سایتی را به راحتی طراحی کنید. توسعه و طراحی سایت های فروشگاهی، شرکتی، خبری و سایت های خاص نظیر دیوار و … توسط زبان PHP به راحتی و سرعت بالایی انجام میشود.
6- طراحی و توسعه قالب و افزونه های وردپرس، ساخت ربات های پیچیده تلگرامی، پیاده سازی api اپلیکیشن های موبایل و… تنها بخشی از پروژه هایی است که با یادگیری PHP قادر به انجام آن هستید. یادگیری زبان برنامه نویسی PHP درهای فراوانی را به سمت بازارکار برنامه نویسی برایتان میگشاید
پشتیبانی دوره به چه صورت است؟
پشتیبانی دوره آموزش برنامه نویسی PHP مدرن هیچ محدودیت زمانی و مکانی ندارد و از زمان تهیه دوره، پشتیبانی اختصاصی آن به صورت دائم در دسترس شماست. شما میتوانید تمام سوالات خود را در گروه تلگرامی مختص این دوره مطرح کنید تا تمام این سوالات مستقیما توسط مدرس دوره (سیروان منفرد) و یا سایر دانشجوهای دوره پاسخ داده شود. مشاوره های استخدامی، سوالات مربوط به نقشه راه یادگیری، رزومه سازی، شخصی سازی برنامه آموزشی و … همگی در پشتیبانی این دوره قابل دسترس هستند.
چرا این دوره بهتر از بقیه دوره هاست؟
1- بروز بودن این دوره و مطابقت آن با سرفصل های موردنیاز بازار کار یکی از مهم ترین تفاوت های این دوره با سایر دوره هاست. زبان PHP با وجود قدیمی بودن، در طی این سالها تغییرات بسیار زیادی را تجربه کرده و به جرئت میتوان گفت که اکوسیستم PHP در 5 سال اخیر، هیچ شباهتی با سالهای قبل از خود ندارد. در نتیجه آموزش آن نیز باید مطابق با تغییرات بوجود آمده در آن باشد.
2- بسیاری از دوره های موجود در بازار بدون توجه به تغییرات بوجود آمده در زبان PHP طی سالهای اخیر، کماکان در حال آموزش مباحث قدیمی و موضوعات منسوخ شده PHP هستند که هیچ فایده ای در بازار کار زبان PHP ندارند. به همین دلیل در این دوره از تمامی مباحث قدیمی و منسوخ PHP صرف نظر شده و مباحث مدرن همراه با تکنولوژی های جدید مورد استفاده در اکوسیستم زبان PHP به شما آموزش داده میشود
3- آموزش پروژه محور PHP: به تجربه ثابت شده که اگر یادگیری بر بستر انجام پروژه های واقعی انجام گیرد، نتایج بسیار بهتر و ماندگارتری برای دانشجوها خواهد داشت. به همین دلیل تمام مباحث این دوره با مینی پروژه ها و پروژه های بزرگتر ترکیب شده اند و در واقع شما تمام موضوعات این دوره را با پروژه های عملی یاد خواهید گرفت. این کار باعث میشود که علاوه بر یادگیری، با نیازهای پروژه های واقعی و بازار کار هم آشنا شوید و دید خوبی نسبت به روند کاری خود، بعد از اتمام دوره داشته باشید.
4- پشتیبانی مادام العمر و ارتباط مستقیم با مدرس هم از دیگر مزایای این دوره جاواسکریپت است. چرا که مدرس این دوره در تمامی مراحل یادگیری در کنار شما خواهد بود و تمامی سوالات و مشکلات شما را شخصا بررسی و پاسخ میدهد. همچنین با ثبتنام در این دوره، به جمعی از علاقهمندان و حرفهایهای PHP میپیوندید که میتوانید با آنها تجربیات خود را به اشتراک بگذارید و از پشتیبانی آنها نیز بهرهمند شوید.
5- پوشش جامع مباحث مدرن PHP: در این دوره، ما به مباحث جدید و بروز PHP میپردازیم که شامل استفاده از جدیدترین ویژگیهای نسخههای اخیر PHP، استانداردهای کدنویسی مدرن، بهترین شیوههای توسعه، تست نویسی، استفاده کاربردی از ویژگی های کمتر شناخته شده نظیر اینترفیس ها و … است.
6- بروزرسانی رایگان محتوا: زبان PHP همواره در حال تغییر و بهبود میباشد و امکانات جدید به صورت مستمر در اختیار توسعه دهندگان قرار میگیرد. خیالتان راحت باشد که تمامی مباحث جدید زبان PHP به مرور در این دوره مورد بررسی قرار میگیرد و محتواهای جدید به رایگان در پنل دانشجوهای این دوره اضافه میشود.
ثبتنام در دوره آموزش PHP مدرن
کافی است نگاهی به سرفصل های این دوره بیاندازید تا متوجه تفاوت های فراوان آن با سایر دوره های آموزش PHP شوید. با توجه به مباحثی که در این دوره میآموزید، شرکت در این دوره، موفقیت شما در بازار کار را تضمین میکند.
پس فرصت را از دست ندهید و همین امروز در دوره آموزشی PHP مدرن ما ثبتنام کنید تا به یکی از برنامهنویسان حرفهای و بروز این حوزه تبدیل شوید.
سوالات متداول
پیش نیاز این دوره چیه؟
درباره نرم افزارها و نصب شون هم میگید؟
بعد از این دوره میتونم یادگیری لاراول رو شروع کنم؟
چرا اسم این دوره رو گذاشتی php مدرن؟