آموزش PHP را مانند یک حرفه ای بنویسید: یک چارچوب PHP MVC از ابتدا بسازید

Write PHP Like a Pro: Build a PHP MVC Framework From Scratch

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با استفاده از چارچوب مدل-view-کنترلر، نوشتن سریع تر، نگهداری آسان تر و ایمن تر وب سایت های PHP را یاد بگیرید. کد برنامه را از کد ارائه جدا کنید کد PHP خود را به مدل ها، نماها و کنترلرها در یک چارچوب MVC سازماندهی کنید از فضاهای نام و بارگذاری خودکار برای بارگیری PHP استفاده کنید. کلاس‌ها به‌طور خودکار از ابزار Composer برای مدیریت وابستگی‌های بسته شخص ثالث و بارگذاری خودکار خطاها و استثناها در PHP استفاده کنید و جزئیات بیشتر یا کمتر خطا را بر اساس محیط نمایش دهید. پیش نیازها: شما باید از قبل با PHP و HTML آشنا باشید. شما باید با نصب نرم افزار بر روی رایانه خود راحت باشید - در بخش اول ما یک وب سرور را نصب می کنیم.

اصول را بیاموزید مفاهیم استفاده از یک چارچوب مدل-نما-کنترل کننده که خواهد ساخت پروژه های PHP شما سریع تر، نوشتن و نگهداری آسان تر، و موارد دیگر امن.

یاد بگیرید با ساخت PHP MVC کد PHP خود را مانند یک حرفه ای ساختار دهید چارچوب از ابتدا.

  • Model-view-controller مفاهیم الگوی (MVC)
  • یک MVC بسازید چارچوب در PHP از ابتدا
  • جدا کنید کد برنامه از کد ارائه
  • از فضاهای نام استفاده کنید و بارگیری خودکار برای بارگیری خودکار کلاس ها

PHP خود را بردارید پروژه ها به سطح بعدی

آموزش نحوه استفاده یک چارچوب MVC ابزار بسیار قدرتمندی را در اختیار شما قرار می دهد. اکثر وب سایت های تجاری و برنامه های کاربردی وب نوشته شده با PHP به نوعی استفاده می کنند از چارچوب، و الگوی MVC محبوب ترین نوع است چارچوب در حال استفاده.

شکاف بین دانستن PHP و استفاده از یک فریمورک می تواند بسیار زیاد باشد. این دوره پل می کند آن شکاف با نوشتن فریمورک خود از ابتدا، یک امتیاز کسب خواهید کرد درک درستی از نحوه عملکرد هر جزء چارچوب هایی مانند Laravel، Symfony و CodeIgniter همگی از الگوی MVC استفاده می کنند، بنابراین درک اینکه چگونه یک فریم ورک MVC در کنار هم قرار می گیرد به شما این امکان را می دهد پس زمینه قوی برای یادگیری آسان تر چارچوب هایی مانند این.

محتوا و نمای کلی

من این را طراحی کردم دوره ای که به راحتی توسط برنامه نویسانی که PHP می دانند اما نمی دانند قابل درک باشد نحوه استفاده از یک فریم ورک را بدانید. آیا کد پایگاه داده و HTML را قرار می دهید؟ در همان اسکریپت PHP؟ می خواهید بدانید چرا این ایده بدی است؟ خواستن می دانید چگونه آن را بهتر انجام دهید؟

شروع با مفاهیم اولیه چارچوب های MVC، این دوره شما را با آن آشنا می کند تمام مراحل مورد نیاز برای ساخت یک چارچوب کامل MVC، یک قطعه در یک زمان.

شروع با a تک اسکریپت PHP، هر سخنرانی توضیح می دهد که قرار است به چه چیزی اضافه کنید کد و چرا، ساختن چارچوب مرحله به مرحله. در پایان در این دوره، شما یک چارچوب کامل MVC در PHP ساخته اید، آماده برای استفاده در پروژه های خود.

تکمیل با با کارکردن کد منبع در هر مرحله، می‌توانید در کنار مربی کار کنید و پس از آن گواهی پایان کار قابل تایید دریافت خواهد کرد در حال اتمام دوره.


سرفصل ها و درس ها

مقدمه: مفاهیم MVC و راه اندازی محیط توسعه Introduction: MVC concepts and development environment setup

  • معرفی Introduction

  • مشکل نوشتن برنامه های وب: چگونه کد خود را ساختاربندی نکنیم The problem with writing web applications: how NOT to structure your code

  • یک وب سرور، سرور پایگاه داده و PHP را روی رایانه خود نصب کنید Install a web server, database server and PHP on your computer

  • افزودنی: پیکربندی اضافی برای AMPPS در ویندوز Addendum: Additional configuration for AMPPS on Windows

مقدمه: مفاهیم MVC و راه اندازی محیط توسعه Introduction: MVC concepts and development environment setup

  • معرفی Introduction

  • مشکل نوشتن برنامه های وب: چگونه کد خود را ساختاربندی نکنیم The problem with writing web applications: how NOT to structure your code

  • الگوی MVC: چیست و چگونه می تواند به شما در نوشتن کد بهتر کمک کند The MVC pattern: What it is and how it can help you write better code

  • الگوی MVC: چیست و چگونه می تواند به شما در نوشتن کد بهتر کمک کند The MVC pattern: What it is and how it can help you write better code

  • یک وب سرور، سرور پایگاه داده و PHP را روی رایانه خود نصب کنید Install a web server, database server and PHP on your computer

  • شروع به نوشتن چارچوب: پوشه ها را ایجاد کنید و وب سرور را پیکربندی کنید Start writing the framework: Create the folders and configure the web server

  • شروع به نوشتن چارچوب: پوشه ها را ایجاد کنید و وب سرور را پیکربندی کنید Start writing the framework: Create the folders and configure the web server

  • افزودنی: پیکربندی اضافی برای AMPPS در ویندوز Addendum: Additional configuration for AMPPS on Windows

  • مفاهیم MVC MVC concepts

  • مفاهیم MVC MVC concepts

مسیریابی: چگونه URL ها در یک چارچوب MVC پردازش می شوند Routing: how URLs are processed in an MVC framework

  • یک نقطه ورودی مرکزی به چارچوب ایجاد کنید: کنترلر جلو Create a central entry point to the framework: the front controller

  • کلاس روتر را ایجاد کرده و به آن نیاز دارید (شامل نمی شود). Create and require (not include) the router class

  • مسیر درخواستی را با لیست مسیرها در جدول مسیریابی مطابقت دهید Match the requested route to the list of routes in the routing table

مسیریابی: چگونه URL ها در یک چارچوب MVC پردازش می شوند Routing: how URLs are processed in an MVC framework

  • یک نقطه ورودی مرکزی به چارچوب ایجاد کنید: کنترلر جلو Create a central entry point to the framework: the front controller

  • وب سرور را طوری پیکربندی کنید که URL های زیبایی داشته باشد Configure the web server to have pretty URLs

  • وب سرور را طوری پیکربندی کنید که URL های زیبایی داشته باشد Configure the web server to have pretty URLs

  • ضمیمه: پیکربندی احتمالی اضافی مورد نیاز برای وب سرور آپاچی Addendum: Possible additional configuration required for the Apache web server

  • ضمیمه: پیکربندی احتمالی اضافی مورد نیاز برای وب سرور آپاچی Addendum: Possible additional configuration required for the Apache web server

  • کلاس روتر را ایجاد کرده و به آن نیاز دارید (شامل نمی شود). Create and require (not include) the router class

  • جدول مسیریابی را در روتر ایجاد کنید و چند مسیر اضافه کنید Create the routing table in the router, and add some routes

  • جدول مسیریابی را در روتر ایجاد کنید و چند مسیر اضافه کنید Create the routing table in the router, and add some routes

  • مسیر درخواستی را با لیست مسیرها در جدول مسیریابی مطابقت دهید Match the requested route to the list of routes in the routing table

  • مفاهیم مسیریابی و کنترلر جلو Routing and front controller concepts

  • مفاهیم مسیریابی و کنترلر جلو Routing and front controller concepts

مسیریابی پیشرفته: مسیرهای ساده تر اما قدرتمندتر را اضافه کنید Advanced routing: add simpler but more powerful routes

  • حتی عبارات منظم قدرتمندتری بنویسید: از مجموعه و محدوده کاراکترها استفاده کنید Write even more powerful regular expressions: use character sets and ranges

  • بخش هایی از رشته ها را با استفاده از گروه های ضبط عبارت منظم استخراج کنید Extract parts of strings using regular expression capture groups

  • کنترل و عملکرد را از یک URL با ساختار ثابت دریافت کنید Get the controller and action from a URL with a fixed structure

  • کنترل و عملکرد را از یک URL با ساختار متغیر دریافت کنید Get the controller and action from a URL with a variable structure

  • عبارات با قاعده Regular expressions

مسیریابی پیشرفته: مسیرهای ساده تر اما قدرتمندتر را اضافه کنید Advanced routing: add simpler but more powerful routes

  • مقدمه ای بر مسیریابی پیشرفته با استفاده از متغیرهای مسیر Introduction to advanced routing using route variables

  • مقدمه ای بر مسیریابی پیشرفته با استفاده از متغیرهای مسیر Introduction to advanced routing using route variables

  • نحوه انجام مقایسه رشته های پیچیده: مقدمه ای بر عبارات منظم How to do complex string comparisons: an introduction to regular expressions

  • نحوه انجام مقایسه رشته های پیچیده: مقدمه ای بر عبارات منظم How to do complex string comparisons: an introduction to regular expressions

  • استفاده از کاراکترهای خاص در عبارات منظم: تطبیق الگوی پیشرفته Using special characters in regular expressions: advanced pattern matching

  • استفاده از کاراکترهای خاص در عبارات منظم: تطبیق الگوی پیشرفته Using special characters in regular expressions: advanced pattern matching

  • حتی عبارات منظم قدرتمندتری بنویسید: از مجموعه و محدوده کاراکترها استفاده کنید Write even more powerful regular expressions: use character sets and ranges

  • بخش هایی از رشته ها را با استفاده از گروه های ضبط عبارت منظم استخراج کنید Extract parts of strings using regular expression capture groups

  • کنترل و عملکرد را از یک URL با ساختار ثابت دریافت کنید Get the controller and action from a URL with a fixed structure

  • قسمت هایی از رشته ها را با استفاده از عبارات منظم جایگزین کنید Replace parts of strings using regular expressions

  • قسمت هایی از رشته ها را با استفاده از عبارات منظم جایگزین کنید Replace parts of strings using regular expressions

  • کنترل و عملکرد را از یک URL با ساختار متغیر دریافت کنید Get the controller and action from a URL with a variable structure

  • متغیرهای سفارشی با هر قالبی را به URL اضافه کنید Add custom variables of any format to the URL

  • متغیرهای سفارشی با هر قالبی را به URL اضافه کنید Add custom variables of any format to the URL

  • عبارات با قاعده Regular expressions

  • مسیریابی پیشرفته Advanced routing

  • مسیریابی پیشرفته Advanced routing

کنترل کننده ها و اقدامات Controllers and actions

  • کنترل کننده ها و اقدامات: مقدمه Controllers and actions: an introduction

  • Dispatch the route: شی کنترلر را ایجاد کنید و متد عمل را اجرا کنید Dispatch the route: create the controller object and run the action method

  • بارگیری خودکار کلاس ها: فضاهای نام و عملکرد بارگذاری خودکار را اضافه کنید Load classes automatically: add namespaces and an autoload function

  • قبل از مطابقت با یک مسیر، متغیرهای رشته پرس و جو را از URL حذف کنید Remove query string variables from the URL before matching to a route

  • پارامترهای مسیر را از مسیر به همه کنترلرها منتقل کنید Pass route parameters from the route to all controllers

  • متد جادویی __call: نحوه فراخوانی متدهای غیرقابل دسترس در یک کلاس The __call magic method: how to call inaccessible methods in a class

  • کنترل کننده ها و اقدامات Controllers and actions

کنترل کننده ها و اقدامات Controllers and actions

  • کنترل کننده ها و اقدامات: مقدمه Controllers and actions: an introduction

  • نحوه ایجاد اشیاء و اجرای متدها به صورت پویا How to create objects and run methods dynamically

  • نحوه ایجاد اشیاء و اجرای متدها به صورت پویا How to create objects and run methods dynamically

  • Dispatch the route: شی کنترلر را ایجاد کنید و متد عمل را اجرا کنید Dispatch the route: create the controller object and run the action method

  • چگونه با استفاده از فضاهای نام، کلاس های خود را بهتر سازماندهی کنید How to better organise your classes by using namespaces

  • چگونه با استفاده از فضاهای نام، کلاس های خود را بهتر سازماندهی کنید How to better organise your classes by using namespaces

  • بارگیری خودکار کلاس: بارگیری کلاس ها به طور خودکار بدون نیاز به آنها Class autoloading: load classes automatically without having to require them

  • بارگیری خودکار کلاس: بارگیری کلاس ها به طور خودکار بدون نیاز به آنها Class autoloading: load classes automatically without having to require them

  • بارگیری خودکار کلاس ها: فضاهای نام و عملکرد بارگذاری خودکار را اضافه کنید Load classes automatically: add namespaces and an autoload function

  • قبل از مطابقت با یک مسیر، متغیرهای رشته پرس و جو را از URL حذف کنید Remove query string variables from the URL before matching to a route

  • پارامترهای مسیر را از مسیر به همه کنترلرها منتقل کنید Pass route parameters from the route to all controllers

  • متد جادویی __call: نحوه فراخوانی متدهای غیرقابل دسترس در یک کلاس The __call magic method: how to call inaccessible methods in a class

  • فیلترهای اقدام: قبل و بعد از هر عمل در یک کنترلر، یک متد را فراخوانی کنید Action filters: call a method before and after every action in a controller

  • فیلترهای اقدام: قبل و بعد از هر عمل در یک کنترلر، یک متد را فراخوانی کنید Action filters: call a method before and after every action in a controller

  • ضمیمه: رفع یک باگ امنیتی احتمالی که با فیلترهای اکشن معرفی شده است Addendum: fix for a potential security bug introduced with the action filters

  • ضمیمه: رفع یک باگ امنیتی احتمالی که با فیلترهای اکشن معرفی شده است Addendum: fix for a potential security bug introduced with the action filters

  • سازماندهی کنترلرها در زیر شاخه ها: گزینه فضای نام مسیر را اضافه کنید Organise controllers in subdirectories: add a route namespace option

  • سازماندهی کنترلرها در زیر شاخه ها: گزینه فضای نام مسیر را اضافه کنید Organise controllers in subdirectories: add a route namespace option

  • کنترل کننده ها و اقدامات Controllers and actions

بازدیدها Views

  • نمایش یک view: یک کلاس برای نمایش نماها ایجاد کنید و از آن در یک کنترلر استفاده کنید Display a view: create a class to render views and use it in a controller

  • خروجی فرار: چیست، چرا آن را انجام دهیم، و چگونه و چه زمانی آن را انجام دهیم Output escaping: what it is, why do it, and how and when to do it

  • موتورهای قالب: چه هستند و چگونه می توانند کد PHP شما را بهبود بخشند Templating engines: what they are and how they can improve your PHP code

  • ضمیمه: تغییرات در Twig 2.0 Addendum: Changes in Twig 2.0

  • بازدیدها Views

بازدیدها Views

  • دیدگاه ها: مقدمه Views: an introduction

  • دیدگاه ها: مقدمه Views: an introduction

  • نمایش یک view: یک کلاس برای نمایش نماها ایجاد کنید و از آن در یک کنترلر استفاده کنید Display a view: create a class to render views and use it in a controller

  • خروجی فرار: چیست، چرا آن را انجام دهیم، و چگونه و چه زمانی آن را انجام دهیم Output escaping: what it is, why do it, and how and when to do it

  • داده ها را از کنترلر به view منتقل کنید Pass data from the controller to the view

  • داده ها را از کنترلر به view منتقل کنید Pass data from the controller to the view

  • موتورهای قالب: چه هستند و چگونه می توانند کد PHP شما را بهبود بخشند Templating engines: what they are and how they can improve your PHP code

  • ایجاد و نگهداری نماها را آسان‌تر کنید: یک موتور الگو اضافه کنید Make views easier to create and maintain: add a template engine

  • ایجاد و نگهداری نماها را آسان‌تر کنید: یک موتور الگو اضافه کنید Make views easier to create and maintain: add a template engine

  • ضمیمه: تغییرات در Twig 2.0 Addendum: Changes in Twig 2.0

  • ضمیمه: چگونه به راحتی یک استثنای احتمالی را هنگام رندر کردن یک قالب Twig برطرف کنیم Addendum: How to easily fix a potential exception when rendering a Twig template

  • ضمیمه: چگونه به راحتی یک استثنای احتمالی را هنگام رندر کردن یک قالب Twig برطرف کنیم Addendum: How to easily fix a potential exception when rendering a Twig template

  • حذف تکرار در قالب های نمایش: یک الگوی پایه برای ارث بردن از آن اضافه کنید Remove repetition in the view templates: add a base template to inherit from

  • حذف تکرار در قالب های نمایش: یک الگوی پایه برای ارث بردن از آن اضافه کنید Remove repetition in the view templates: add a base template to inherit from

  • بازدیدها Views

مدیریت کد با استفاده از Composer Manage code using Composer

  • کتابخانه موتور قالب را با استفاده از Composer نصب کنید Install the template engine library using Composer

  • عملکرد بارگذاری خودکار را با بارگذار خودکار Composer جایگزین کنید Replace the autoload function with the Composer autoloader

  • آهنگساز Composer

مدیریت کد با استفاده از Composer Manage code using Composer

  • کتابخانه های کد PHP شخص ثالث را به طور خودکار با استفاده از Composer نصب کنید Install third-party PHP code libraries automatically using Composer

  • کتابخانه های کد PHP شخص ثالث را به طور خودکار با استفاده از Composer نصب کنید Install third-party PHP code libraries automatically using Composer

  • نصب و استفاده از Composer Installing and using Composer

  • نصب و استفاده از Composer Installing and using Composer

  • کتابخانه موتور قالب را با استفاده از Composer نصب کنید Install the template engine library using Composer

  • تمام کلاس‌های بسته را به‌طور خودکار با استفاده از بارگذاری خودکار Composer اضافه کنید Include all package classes automatically using the Composer autoloader

  • تمام کلاس‌های بسته را به‌طور خودکار با استفاده از بارگذاری خودکار Composer اضافه کنید Include all package classes automatically using the Composer autoloader

  • از Composer autoloader برای بارگیری کتابخانه موتور الگو استفاده کنید Use the Composer autoloader to load the template engine library

  • از Composer autoloader برای بارگیری کتابخانه موتور الگو استفاده کنید Use the Composer autoloader to load the template engine library

  • کلاس های خود را به Autoloader Composer اضافه کنید Add your own classes to the Composer autoloader

  • کلاس های خود را به Autoloader Composer اضافه کنید Add your own classes to the Composer autoloader

  • عملکرد بارگذاری خودکار را با بارگذار خودکار Composer جایگزین کنید Replace the autoload function with the Composer autoloader

  • آهنگساز Composer

مدل ها Models

  • اتصال پایگاه داده را بهینه کنید: فقط در صورت تقاضا متصل شوید و دوباره از آن استفاده کنید Optimise the database connection: connect only on demand and reuse it

  • Erratum: تصحیح بهینه سازی کد اتصال پایگاه داده Erratum: Correction to the Optimise the database connection code

مدل ها Models

  • مدل ها: مقدمه Models: an introduction

  • مدل ها: مقدمه Models: an introduction

  • یک پایگاه داده ایجاد کنید و بررسی کنید که می توانید از طریق PHP به آن متصل شوید Create a database and check you can connect to it from PHP

  • یک پایگاه داده ایجاد کنید و بررسی کنید که می توانید از طریق PHP به آن متصل شوید Create a database and check you can connect to it from PHP

  • مقدمه‌ای بر PDO: چرا کار با پایگاه‌های داده در PHP را آسان‌تر می‌کند An introduction to PDO: why it makes working with databases in PHP easier

  • مقدمه‌ای بر PDO: چرا کار با پایگاه‌های داده در PHP را آسان‌تر می‌کند An introduction to PDO: why it makes working with databases in PHP easier

  • یک مدل اضافه کنید، داده ها را از پایگاه داده دریافت کنید و آن را در یک نمای نمایش دهید Add a model, get data from the database and display it in a view

  • یک مدل اضافه کنید، داده ها را از پایگاه داده دریافت کنید و آن را در یک نمای نمایش دهید Add a model, get data from the database and display it in a view

  • اتصال پایگاه داده را بهینه کنید: فقط در صورت تقاضا متصل شوید و دوباره از آن استفاده کنید Optimise the database connection: connect only on demand and reuse it

  • Erratum: تصحیح بهینه سازی کد اتصال پایگاه داده Erratum: Correction to the Optimise the database connection code

  • مدل ها Models

  • مدل ها Models

پیکربندی و مدیریت خطا Configuration and error handling

  • نحوه گزارش مشکلات PHP: خطاها، استثناها و نحوه رسیدگی به آنها How PHP reports problems: errors, exceptions, and how to handle them

  • تنظیمات پیکربندی PHP: کجا آنها را پیدا کنید و چگونه آنها را تغییر دهید PHP configuration settings: where to find them and how to change them

  • PHP را برای نمایش پیام های خطا پیکربندی کنید Configure PHP to display error messages

  • انواع مختلف خطا را با استفاده از کدهای وضعیت HTTP دسته بندی کنید Categorise different types of error using HTTP status codes

  • پیکربندی و مدیریت خطا Configuration and error handling

پیکربندی و مدیریت خطا Configuration and error handling

  • تنظیمات پیکربندی برنامه را در یک فایل جداگانه قرار دهید Put application configuration settings in a separate file

  • تنظیمات پیکربندی برنامه را در یک فایل جداگانه قرار دهید Put application configuration settings in a separate file

  • نحوه گزارش مشکلات PHP: خطاها، استثناها و نحوه رسیدگی به آنها How PHP reports problems: errors, exceptions, and how to handle them

  • کنترل خطاها: خطاها را به استثنا تبدیل کنید و یک کنترل کننده استثنا اضافه کنید Handle errors: convert errors to exceptions and add an exception handler

  • کنترل خطاها: خطاها را به استثنا تبدیل کنید و یک کنترل کننده استثنا اضافه کنید Handle errors: convert errors to exceptions and add an exception handler

  • تنظیمات پیکربندی PHP: کجا آنها را پیدا کنید و چگونه آنها را تغییر دهید PHP configuration settings: where to find them and how to change them

  • PHP را برای نمایش پیام های خطا پیکربندی کنید Configure PHP to display error messages

  • نمایش پیام های خطای دقیق به توسعه دهندگان، پیام های خطای دوستانه به کاربران Show detailed error messages to developers, friendly error messages to users

  • نمایش پیام های خطای دقیق به توسعه دهندگان، پیام های خطای دوستانه به کاربران Show detailed error messages to developers, friendly error messages to users

  • انواع مختلف خطا را با استفاده از کدهای وضعیت HTTP دسته بندی کنید Categorise different types of error using HTTP status codes

  • نماها را اضافه کنید تا صفحات خطا در تولید زیباتر به نظر برسند Add views to make error pages look nicer in production

  • نماها را اضافه کنید تا صفحات خطا در تولید زیباتر به نظر برسند Add views to make error pages look nicer in production

  • پیکربندی و مدیریت خطا Configuration and error handling

نتیجه Conclusion

نتیجه Conclusion

  • معرفی کوتاهی بر برخی از فریمورک های محبوب A brief introduction to some popular frameworks

  • معرفی کوتاهی بر برخی از فریمورک های محبوب A brief introduction to some popular frameworks

  • نتیجه Conclusion

  • نتیجه Conclusion

  • سخنرانی پاداش: تخفیف در دوره های دیگر Bonus Lecture: Discounts on other courses

  • سخنرانی پاداش: تخفیف در دوره های دیگر Bonus Lecture: Discounts on other courses

نمایش نظرات

آموزش PHP را مانند یک حرفه ای بنویسید: یک چارچوب PHP MVC از ابتدا بسازید
جزییات دوره
3 hours
66
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
10,639
4.7 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Dave Hollingworth Dave Hollingworth

مربی فناوری اطلاعات