TGViewer
| کانال توسعه‌دهندگان لاراول | | کانال توسعه‌دهندگان لاراول | @developixlaravel · 1.54K subscribers
Post #55 782
فصل یک - Routing

بخش دوم - معرفی متد های روتینگ - قسمت اول


در این قسمت به 8 تا از پر کاربرد ترین و اصلی ترین متد های موجود در فساد Route می پردازیم:

1- متد get برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP GET پاسخ می‌دهد. این نوع درخواست معمولاً برای دریافت اطلاعات استفاده می‌شود.
Route::get('/users', function () {
return 'List of users';
});

کد بالا به معنی این است که اگر درخواستی را با متد GET به آدرس domain.example/users بدهیم، تابع ناشناس داده شده به متد(اکشن) اجرا خواهد شد.

حال فرض کنید می‌خواهیم مسیری ایجاد کنیم که اطلاعات یک کاربر خاص را بر اساس شناسه (ID) او نمایش دهد. در این صورت، می‌توانیم از پارامترهای داینامیک استفاده کنیم:
Route::get('/user/{id}', function ($id) {
return "User ID is $id";
});

در اینجا، {id} یک پارامتر داینامیک است که می‌تواند هر مقداری باشد. این مقدار از URL استخراج شده و به تابع بسته می‌شود.
توجه داشته باشید که پارامتر id یک پارامتر اجباری است و درصورتی که در url وارد نشود route ما اجرا نخواهد شد.

برای پارامتر های اختیاری می توان به صورت زیر عمل کرد:
Route::get('/user/{id?}', function ($id = 0) {
if ($id == 0){
return "Hello!";
}
return "User ID is $id";
});

پارامتر {id?} یک پارامتر اختیاری است و حتی اگر آن را وارد نکنیم route ما اجرا خواهد شد، اما توجه داشته باشید که مقدار پیشفرض آن را در اکشن تعریف نمایید.

پارامتر های داینامیک برای تمامی متد ها در دسترس هستند.

2- متد post برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP POST پاسخ می‌دهد. این نوع درخواست معمولاً برای ارسال داده به سرور و ایجاد منابع جدید استفاده می‌شود.

Route::post('/users', function () {
return 'User created';
});


3- متد put برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP PUT پاسخ می‌دهد. این نوع درخواست معمولاً برای به‌روزرسانی کامل یک منبع موجود استفاده می‌شود.
Route::put('/users/{id}', function ($id) {
return 'User ' . $id . ' updated';
});


4- متد patch برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP PATCH پاسخ می‌دهد. این نوع درخواست معمولاً برای به‌روزرسانی جزئی یک منبع موجود استفاده می‌شود.
Route::patch('/users/{id}', function ($id) {
return 'User ' . $id . ' partially updated';
});


5- متد delete برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP DELETE پاسخ می‌دهد. این نوع درخواست معمولاً برای حذف یک منبع موجود استفاده می‌شود.
Route::delete('/users/{id}', function ($id) {
return 'User ' . $id . ' deleted';
});


6- متد options برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP OPTIONS پاسخ می‌دهد. این نوع درخواست برای بازگشت اطلاعاتی در مورد ارتباطات مجاز برای یک منبع خاص استفاده می‌شود.
Route::options('/users', function () {
return ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'];
});


7- متد any برای تعریف مسیری استفاده می‌شود که به تمامی انواع درخواست‌های HTTP پاسخ می‌دهد. این نوع مسیر معمولاً برای مسیرهایی استفاده می‌شود که باید به تمامی درخواست‌ها پاسخ دهند.
Route::any('/contact', function () {
return 'Contact form';
});


8- متد match به شما اجازه می‌دهد تا یک مسیر را برای چندین نوع درخواست HTTP تعریف کنید. این متد زمانی مفید است که می‌خواهید یک مسیر خاص به چندین متد HTTP مانند GET و POST پاسخ دهد.
Route::match(['get', 'post'], '/contact', function () {
//
});

این متد برخلاف سایر متد های توضیح داده شده یک پارامتر اضافه تر حاوی آرایه ای از متدهای مجاز را در ابتدا دریافت می کند و پس از آن مانند سایر متد ها عمل میکند.

متد های بالا در فایل های web.php و api.php قابل استفاده هستند.

🔖 #Laravel, #PHP, #لاراول, #فصل_۱

👤 AmirHossein

💎 Channel: @DevelopixLaravel
  • 👍 11
  • 🔥 4
  • ❤ 3
More from @developixlaravel
  1. Oct 1, 2026روابط پایگاه داده چند ریختی یا Eloquent Polymorphic در لاراول - قسمت اول در لاراول، روابط…
  2. Sep 30, 2026مدیریت همزمانی و قفل‌گذاری روی پردازش‌ها در لاراول (Laravel Atomic Locks) در بخش چهارم از…
  3. Sep 26, 2026🔥 پکیج: ورود با حساب‌های دیگر؛ Socialite برای اضافه‌کردن ورود با حساب‌های دیگر به پروژه ل…
  4. Sep 25, 2026🔒 فقط داده‌های تأییدشده را ذخیره کن وقتی یک فرم ویرایش پروفایل داری، ممکن است کلاینت علاو…
  5. Sep 20, 2026حفاظت از پردازش ها با Laravel Rate Limiter بخش سوم - پیکربندی در قسمت سوم از مجموعه آموزش…
  6. Sep 16, 2026🚀 ‏LaraGram Brain منتشر شد! از این به بعد برای ساخت ربات‌های تلگرام با فریم‌ورک LaraG…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →