Laravel သည်၎င်း၏ရိုးရှင်းမှုနှင့်ကြော့ရှင်းမှုကြောင့်လူသိများသောခေတ်သစ် PHP web application framework ဖြစ်သည်။ developer များလျင်မြန်စွာတည်ဆောက်ရန်နှင့်ထိန်းသိမ်းနိုင်သော applications များကိုလျင်မြန်စွာတည်ဆောက်ရန်ကူညီရန်ကြွယ်ဝသောအင်္ဂါရပ်များကိုပေးသည်။ ၎င်းတို့အနက် routing function သည် Laravel ၏အဓိကအစိတ်အပိုင်းတစ်ခုဖြစ်သည်။
Laravel တွင် routing parameters များသည် url လမ်းကြောင်း၏ dynamic အစိတ်အပိုင်းများဖြစ်သည်။ ဥပမာ - / အသုံးပြုသူများ / {ID} ။ ဤနေရာတွင် ID သည် routing parameter တစ်ခုဖြစ်ပြီးတောင်းဆိုမှုကိုအလိုက်ပြောင်းလဲနိုင်သည်။
routing parameterscers များသည်လျှောက်လွှာတင်ရေးကိုသေချာစေရန်အဓိကအတိုင်းအတာတစ်ခုဖြစ်သည်။ အတည်မပြုရသေးသော parameterscers များသည်လျှောက်လွှာယုတ္တိဗေဒချွင်းချက်များကိုဖြစ်ပေါ်စေပြီးအန္တရာယ်ရှိသောတိုက်ခိုက်မှုများကိုပင်အသုံးချနိုင်သည်။ parameters တွေကို, တရားမ 0 င်တောင်းဆိုမှုများ, အချက်အလက်ချိုးဖောက်မှုများကိုအတည်ပြုခြင်းအားဖြင့်, အချက်အလက်ချိုးဖောက်မှုများနှင့်အလားအလာရှိသောလုံခြုံရေးအားနည်းချက်များ
လမ်းကြောင်းများကိုသတ်မှတ်သည့်အခါ parameter formats များကိုကန့်သတ်ရန် Laravel သည်ပုံမှန်အသုံးအနှုန်းများကို အသုံးပြု. ပုံမှန်အသုံးအနှုန်းများကိုအသုံးပြုသည်။ ဤနည်းလမ်းသည်ရိုးရှင်းသောစိစစ်အတည်ပြုလိုအပ်ချက်များအတွက်သင့်လျော်သည်။
Route::get('/users/{id}', function ($id) {
// ယုတ္တိဗေဒ processing
})->where('id', '[0-9]+');
အထက်ဖော်ပြပါကုဒ်တွင် method သည် iD Parameter သည်ဂဏန်းတစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသောဂဏန်းများဖြစ်ရမည်။ အကယ်. ဤစည်းမျဉ်းကိုမတွေ့ပါက Laravel သည် 404 အမှားစာမျက်နှာသို့အလိုအလျောက်ပြန်သွားလိမ့်မည်။
အတည်ပြုသည့်ယုတ္တိဗေဒသည်ရှုပ်ထွေးသောအခါထုံးစံစည်းမျဉ်းများကိုအသုံးပြုရန်အကြံပြုသည်။ ဥပမာအားဖြင့်, ID parameter သည်ပင်နံပါတ်တစ်ခုကိုပင်ဖြစ်ချင်သည်။
ပထမ ဦး စွာထုံးစံစည်းမျဉ်းအတန်းကိုဖန်တီးပါ။
namespace App\Rules;
use Illuminate\Contracts\Validation\Rule;
class UserIdRule implements Rule
{
public function passes($attribute, $value)
{
return $value % 2 == 0;
}
public function message()
{
return 'The user id must be even.';
}
}
ထို့နောက် routing definition မှစည်းမျဉ်းကိုသုံးပါ။
use App\Rules\UserIdRule;
Route::get('/users/{id}', function ($id) {
// ယုတ္တိဗေဒ processing
})->where('id', new UserIdRule);
ဤအချိန်တွင်ထူးဆန်းသော ID ကို ဖွင့်ပါက Laravel သည်အမှားအယွင်းတစ်ခုပြန်ပို့လိမ့်မည်။
ပိုမိုအကြံပြုထားသောချဉ်းကပ်နည်းသည် Centroller တွင် Centrally Parameter Verification ကိုကိုင်တွယ်ရန်ဖြစ်သည်။ မှီခိုအားထားမှုနှင့် အတည်ပြု နည်းစနစ်များကိုအတည်ပြုခြင်းဖြင့်အတည်ပြုသည့်ယုတ္တိဗေဒကိုပိုမိုရှင်းလင်းစွာထိန်းသိမ်းရန်ပိုမိုလွယ်ကူစွာပြုလုပ်နိုင်သည်။
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function show(Request $request, User $user)
{
$request->validate([
'id' => 'required|numeric|even'
]);
// 正确参数ယုတ္တိဗေဒ processing
}
}
ဤဥပမာတွင် မှန်ကန်သော နည်းလမ်းမှာ ID parameter သည်တည်ရှိရမည်ဟုသေချာစေသည်။ အတည်ပြုခြင်းမအောင်မြင်ပါက Laravel သည်အပိုဆောင်းအပြောင်းအလဲနဲ့အမှားအယွင်းများကိုအလိုအလျောက်ပြန်ပို့လိမ့်မည်။
Laravel ရှိ routing parameters များကိုစစ်ဆေးခြင်းသည်လျှောက်လွှာလုံခြုံရေးကိုတိုးတက်စေရုံသာမကအသုံးပြုသူအတွေ့အကြုံကိုမြှင့်တင်ပေးသည်။ ပုံမှန်အသုံးအနှုန်းများမှတစ်ဆင့်ဖြစ်စေ, Controller တွင် Centroller တွင်အတည်ပြုခြင်း, ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းလျှောက်လွှာ၏တည်ငြိမ်မှုနှင့်လုံခြုံမှုကိုသေချာစေရန်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီသင့်လျော်သောနည်းလမ်းများကိုရွေးချယ်သင့်သည်။