فهرست:
بازیابی درخواست URI
از متد path
برای بازیابی URI
درخواستی استفاده می شود. از متد is
بررسی صحیح بودن URI
درخواستی استفاده می شود که آیا با الگویی که در آرگومان متد مشخص شده مطابقت دارد یا خیر و برای دریافت URL
کامل، می توانیم از متد url
استفاده کنیم. برای بررسی بهتر مثال زیر را بررس فرماید. ابتدا با خط فرمان زیر کنترلر UriController
ایجاد می کنیم.
[pastacode lang=”markup” manual=”php%20artisan%20make%3Acontroller%20UriController%20%E2%80%93plain” message=”” highlight=”” provider=”manual”/]
بعد از ساخت کنترلر فایل app/Http/Controllers/UriController.php
بصورت زیر ویرایش نمایید.
[pastacode lang=”php” manual=”%3C%3Fphp%0A%0Anamespace%20App%5CHttp%5CControllers%3B%0A%0Ause%20Illuminate%5CHttp%5CRequest%3B%0Ause%20App%5CHttp%5CRequests%3B%0Ause%20App%5CHttp%5CControllers%5CController%3B%0A%0Aclass%20UriController%20extends%20Controller%20%7B%0A%20%20%20%0A%20%20%20public%20function%20index(Request%20%24request)%20%7B%0A%20%20%20%20%20%20%2F%2F%20Usage%20of%20path%20method%0A%20%20%20%20%20%20%24path%20%3D%20%24request-%3Epath()%3B%0A%20%20%20%20%20%20echo%20’Path%20Method%3A%20′.%24path%3B%0A%20%20%20%20%20%20echo%20’%3Cbr%3E’%3B%0A%20%20%20%20%20%0A%20%20%20%20%20%20%2F%2F%20Usage%20of%20is%20method%0A%20%20%20%20%20%20%24pattern%20%3D%20%24request-%3Eis(‘foo%2F*’)%3B%0A%20%20%20%20%20%20echo%20’is%20Method%3A%20′.%24pattern%3B%0A%20%20%20%20%20%20echo%20’%3Cbr%3E’%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%2F%2F%20Usage%20of%20url%20method%0A%20%20%20%20%20%20%24url%20%3D%20%24request-%3Eurl()%3B%0A%20%20%20%20%20%20echo%20’URL%20method%3A%20′.%24url%3B%0A%20%20%20%7D%0A%7D” message=”app/Http/Controllers/UriController.php” highlight=”” provider=”manual”/]
حال فایل app/Http/route.php
بصورت زیر ویرایش کنید.
[pastacode lang=”php” manual=”Route%3A%3Aget(‘%2Ffoo%2Fbar’%2C’UriController%40index’)%3B%0A” message=”app/Http/route.php” highlight=”” provider=”manual”/]
حال آدرس زیر را باز کنید
[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Ffoo%2Fbar%0A” message=”” highlight=”” provider=”manual”/]
خروجی مرورگر شما باید بصورت زیر باشد.
[pastacode lang=”markup” manual=”Path%20Method%3A%20foo%2Fbar%0Ais%20Method%3A%201%0AURL%20method%3A%20http%3A%2F%2Flocalhost%3A8000%2Ffoo%2Fbar” message=”” highlight=”” provider=”manual”/]
بازیابی Input
در لاراول مقادیر ورودی را می توان به راحتی بازیابی کرد. مهم نیست که چه روشی از “GET
” یا “POST
” استفاده شده است ، لاراول مقادیر ورودی هر دو روش را به همان روش بازیابی می کند. به دو روش می توان مقادیر ورودی را بازیابی کرد.
- با استفاده از متد
input
- با استفاده از Request instance
استفاده از متد input
متد input نام فیلد مورد نظر را به شکل یک یک آرگومان دریافت می کند مثالا اگر فرم شامل دارای فیلدی به نام username
باشد، از طریق زیر می توانیم به آن دسترسی پیدا کنیم.
[pastacode lang=”php” manual=”%24name%20%3D%20%24request-%3Einput(‘username’)%3B” message=”” highlight=”” provider=”manual”/]
استفاده از Request instance
مانند متد input
، می توانیم ویژگی username
را مستقیماً از Request instance دریافت کنیم.
[pastacode lang=”php” manual=”%24request-%3Eusername%0A” message=”” highlight=”” provider=”manual”/]
برای درک بهتر مثال زیر را بررسی کنید، یک فرم ثبت نام ایجاد کنید ، جایی که کاربر بتواند خود را ثبت نام کند برای این منظور فرم زیر را در resources/views/register.php
ایجاد کنید.
[pastacode lang=”markup” manual=”%3Chtml%3E%0A%0A%20%20%20%3Chead%3E%0A%20%20%20%20%20%20%3Ctitle%3EForm%20Example%3C%2Ftitle%3E%0A%20%20%20%3C%2Fhead%3E%0A%0A%20%20%20%3Cbody%3E%0A%20%20%20%20%20%20%3Cform%20action%20%3D%20%22%2Fuser%2Fregister%22%20method%20%3D%20%22post%22%3E%0A%20%20%20%20%20%20%20%20%20%3Cinput%20type%20%3D%20%22hidden%22%20name%20%3D%20%22_token%22%20value%20%3D%20%22%3C%3Fphp%20echo%20csrf_token()%20%3F%3E%22%3E%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%3Ctable%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3EName%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3E%3Cinput%20type%20%3D%20%22text%22%20name%20%3D%20%22name%22%20%2F%3E%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3EUsername%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3E%3Cinput%20type%20%3D%20%22text%22%20name%20%3D%20%22username%22%20%2F%3E%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3EPassword%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%3E%3Cinput%20type%20%3D%20%22text%22%20name%20%3D%20%22password%22%20%2F%3E%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctd%20colspan%20%3D%20%222%22%20align%20%3D%20%22center%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cinput%20type%20%3D%20%22submit%22%20value%20%3D%20%22Register%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftd%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftr%3E%0A%20%20%20%20%20%20%20%20%20%3C%2Ftable%3E%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%3C%2Fform%3E%0A%20%20%20%3C%2Fbody%3E%0A%3C%2Fhtml%3E” message=”resources/views/register.php” highlight=”” provider=”manual”/]
دستور زیر را برای ایجاد کنترلر UserRegistration
اجرا کنید.
[pastacode lang=”markup” manual=”php%20artisan%20make%3Acontroller%20UserRegistration%20–plain” message=”” highlight=”” provider=”manual”/]
بعد از ایجاد کنترلر فایل app/Http/Controllers/UserRegistration.php
را بصورت زیر ویرایش کنید.
[pastacode lang=”php” manual=”%3C%3Fphp%0A%0Anamespace%20App%5CHttp%5CControllers%3B%0A%0Ause%20Illuminate%5CHttp%5CRequest%3B%0Ause%20App%5CHttp%5CRequests%3B%0Ause%20App%5CHttp%5CControllers%5CController%3B%0A%0Aclass%20UserRegistration%20extends%20Controller%20%7B%0A%20%20%20public%20function%20postRegister(Request%20%24request)%20%7B%0A%20%20%20%20%20%20%2F%2FRetrieve%20the%20name%20input%20field%0A%20%20%20%20%20%20%24name%20%3D%20%24request-%3Einput(‘name’)%3B%0A%20%20%20%20%20%20echo%20’Name%3A%20′.%24name%3B%0A%20%20%20%20%20%20echo%20’%3Cbr%3E’%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%2F%2FRetrieve%20the%20username%20input%20field%0A%20%20%20%20%20%20%24username%20%3D%20%24request-%3Eusername%3B%0A%20%20%20%20%20%20echo%20’Username%3A%20′.%24username%3B%0A%20%20%20%20%20%20echo%20’%3Cbr%3E’%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%2F%2FRetrieve%20the%20password%20input%20field%0A%20%20%20%20%20%20%24password%20%3D%20%24request-%3Epassword%3B%0A%20%20%20%20%20%20echo%20’Password%3A%20′.%24password%3B%0A%20%20%20%7D%0A%7D” message=”app/Http/Controllers/UserRegistration.php” highlight=”” provider=”manual”/]
حال فایل app/Http/routes.php
را بصورت زیر تغییر دهید.
[pastacode lang=”php” manual=”Route%3A%3Aget(‘%2Fregister’%2Cfunction()%20%7B%0A%20%20%20return%20view(‘register’)%3B%0A%7D)%3B%0ARoute%3A%3Apost(‘%2Fuser%2Fregister’%2Carray(‘uses’%3D%3E’UserRegistration%40postRegister’))%3B” message=”app/Http/routes.php” highlight=”” provider=”manual”/]
به URL زیر مراجعه کنید و فرم ثبت نام را پر نموده و بر روی دکمه Register کلیک کنید خروجی مرورگر شما با توجه به فیلد های پر شده در فرم ثبت نام خواهد بود.
[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Fregister” message=”” highlight=”” provider=”manual”/]