1.resource controller
用php artisan make:controller
建立controller之後有一個show方法,
public function show($id=0) { $page=Page::find($id); print_r($page); }
如何設定ID必須為數字,除了在方法裡面?
因為這是用於資源型的路由,不輸ID不走show方法到index裡面,若是我用於其他控制器的getShow($id),
這樣要是沒輸id會報錯,只能這樣指定一個預設值來避免嗎?getShow($id=0)
,
2.命名空間/API的使用問題
在API中有很多方法,該如何使用?
比如說http://laravel.com/api/5.1/Illuminate/Http/Request.html#method_ip
echo \Requst::ip(); 這麼用報錯了,能不用use引入嗎?很多時候記不住
string ip()Returns the client IP address.Return Valuestring
自訂錯誤的處理
指定一個路由只能為數字之後使用者輸了不是數位就報錯了,怎麼讓其提示不存在的,或者跳轉到指定頁面
回複內容:
1.resource controller
用php artisan make:controller
建立controller之後有一個show方法,
public function show($id=0) { $page=Page::find($id); print_r($page); }
如何設定ID必須為數字,除了在方法裡面?
因為這是用於資源型的路由,不輸ID不走show方法到index裡面,若是我用於其他控制器的getShow($id),
這樣要是沒輸id會報錯,只能這樣指定一個預設值來避免嗎?getShow($id=0)
,
2.命名空間/API的使用問題
在API中有很多方法,該如何使用?
比如說http://laravel.com/api/5.1/Illuminate/Http/Request.html#method_ip
echo \Requst::ip(); 這麼用報錯了,能不用use引入嗎?很多時候記不住
string ip()Returns the client IP address.Return Valuestring
自訂錯誤的處理
指定一個路由只能為數字之後使用者輸了不是數位就報錯了,怎麼讓其提示不存在的,或者跳轉到指定頁面
1.如果使用Route::resource(),你可以嘗試在RouteServiceProvider
的boot()
方法增加:
public function boot(Router $router){ $router->pattern('id', '[0-9]+'); parent::boot($router);}
注意,引入Router。
2.既然記不住,請使用一個好的IDE,比如PHPStorm,相關教程
https://laravist.com/series/phpstorm-the-best-php-ide-you-ever-met
3.自訂404能滿足你的需求不?