برنامه نویسی با محبوب ترین فریم ورک پی اچ پی #2
دارالترجمه رسمی
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
افزونه های سئو وردپرس
بهترین افزونه های سئو وردپرس به صورت کاملا فارسی
بهترین افزونه های سئو وردپرس به صورت کاملا فارسی
افزونه فرم ساز آسان
فرم ساز آسان اولین فرم ساز کاملا فارسی وردپرس
فرم ساز آسان اولین فرم ساز کاملا فارسی وردپرس
خرید ورق گالوانیزه رنگی
خرید انواع ورق گالوانیزه رنگی با بهترین قیمت
خرید انواع ورق گالوانیزه رنگی با بهترین قیمت
کارگاه رویه کوبی در تهران
بهترین کارگاه رویه کوبی و تعمیر مبل راحتی و استیل در تهران با قیمت و کیفیت عالی
خودتان را اینجا معرفی کنید
بهترین کارگاه رویه کوبی و تعمیر مبل راحتی و استیل در تهران با قیمت و کیفیت عالی
ساختار برنامه:
در قسمت قبل ما با دستورات وارد شده در ترمینال خود تونستیم که فولدر لاراول رو در htdocs ایجاد کنیم.در نگاهی اجمالی به ساختار آن می توان به دایرکتوری app که شامل کنترلرها، مدل ها، فیلترها، درخواستها و ... بوده ، دایرکتوری config که همانطور که از اسمش پیداست جهت تنظیمات برنامه شما مورد استفاده قرار می گیره، resources که جهت نگهداری view ها و فایل های زبان برنامه بوده ،دایرکتوری storage که شامل کدهای کامپایل شده blade ها هست اشاره کرد .
در آموزش های آتی به طور مفصل در مورد هر یک از این دایرکتوریها به طور مفصل صبحت خواهیم کرد.
روتینگ (Routing)
روتینگ یکی از اجزای اساسی لاراول است. وظیفه روتینگ را می توان به دریافت درخواست ها از URL و اتخاذ تصمیم مناسب اشاره کرد.فایل routes در مسیر app/Http/routes.php قرار گرفته است. پس از بازکردن فایل کد زیر مشاهده می شود.
Route::get('/', function () {
return view('welcome');
});
این تکه کد مسئول نمایش صفحه پیش فرض لاراول می باشد. با این توضیح که درصورت درخواست "/" در URL ، صفحه welcome که در مسیر
app/resources/views/welcome.blade.php نمایش داده خواهد شد.
چهار حالت (get ,post ,put ,delete) برای ارسال درخواست به روتینگ وجود دارد که در آموزش های بعدی به طور مفصل توضیح داده خواهد شد.
app/resources/views/welcome.blade.php نمایش داده خواهد شد.
چهار حالت (get ,post ,put ,delete) برای ارسال درخواست به روتینگ وجود دارد که در آموزش های بعدی به طور مفصل توضیح داده خواهد شد.
Route::get('/', function () {
return 'Hello World';
});
Route::post('foo/bar', function () {
return 'Hello World';
});
Route::put('foo/bar', function () {
//
});
Route::delete('foo/bar', function () {
//
});
ثبت نام یک مسیر برای درخواستهای متعدد
گاهی اوقات ممکن است که در توسعه پروژه نیازمند ارائه یک فایل برای چندین نوع درخواست باشید.
برای این کار کافیست متد match در فایل routes به شکل زیر استفاده نمائید.
برای این کار کافیست متد match در فایل routes به شکل زیر استفاده نمائید.
Route::match(['get', 'post'], '/', function () {
return 'Hello World';
});
Route::any('foo', function () {
return 'Hello World';
});
استفاده از پارامتر ها در مسیر دهی
گاهی اوقات شما نیازمند دریافت اطلاعات از URL هستید شما می توانید برای ارسال یک پارامتر و یا برای ارسال چندین پارامتر به صورت اجباری و یا اختیاری از کد زیر استفاده نمائید.
برای ارسال پارامتر به صورت اجباری
برای ارسال پارامتر به صورت اجباری
Route::get('user/{id}', function ($id) {
return 'User '.$id;
});
Route::get('posts/{post}/comments/{comment}', function ($postId, $commentId) {
//
});
برای ارسال پارامتر به صورت اختیاری
Route::get('user/{name?}', function ($name = null) {
return $name;
});
Route::get('user/{name?}', function ($name = 'John') {
return $name;
});
گروه بندی
گروه بندی مسیرها به شما این امکان را می دهد تا برای گروهی از مسیرها شرایط یکسانی از جمله(Middleware ، Namespaces ، Sub-Domain Routing و یا Route Prefixes را ایجاد نمائیم بدون نیاز به اینکه این کار را برای تک تک مسیرها تکرار نمائیم.این ویژگیها به عنوان پارامتر اول در آرایه از متد Route::group مشخص می شوند.
برای یادگیری گروه بندی با ما همراه باشید.
فیلتر کردن (Middleware)
برای اختصاص فیلتر برای گروهی از مسیرها کافیست از صفت middleware به شکل زیر استفاده نمائید.در کد زیر کاربرانی دسترسی دارند که دارای سطح دسترسی ‘auth’ باشند.
Route::group(['middleware' => 'auth'], function () {
Route::get('/', function () {
// Uses Auth Middleware
});
Route::get('user/profile', function () {
// Uses Auth Middleware
});
});
ایجاد پیشوند برای مسیر دهی
گاهی اوقات می خواهید کلیه فایلهای بخش ادمین با پیشوند admin شروع شود. برای این کار می توانید از کد زیر برای این کار استفاده نمائید.
Route::group(['prefix' => 'admin'], function () {
Route::get('users', function () {
// Matches The "/admin/users" URL
});
});
استفاده از namespace برای مسیر دهی
Route::group(['namespace' => 'Admin'], function()
{
// Controllers Within The "AppHttpControllersAdmin" Namespace
Route::group(['namespace' => 'User'], function()
{
// Controllers Within The "AppHttpControllersAdminUser" Namespace
});
});
ایجاد Sub Domain برای مسیر دهی
Route::group(['domain' => '{account}.myapp.com'], function () {
Route::get('user/{id}', function ($account, $id) {
//
});
});
در آموزش بعدی با ارائه مبحث Middleware (فیلتر کردن مسیرها) با ما باشید.
نظرات و سوالات کاربران
لطفا در صورت امکان مطالب رو مفصل تر آموزش بدین