當請求由路由分配給控制器之後,就會附帶一個 Request 物件,你可以在參數列透過型別提示技巧來取得
//routes\\api.php
Route::get('request/{id?}','App\\Http\\Controllers\\Api\\TaskController@test');
//app\\Http\\Controllers\\Api\\TaskController.php
namespace App\\Http\\Controllers\\Api;
use Illuminate\\Http\\Request;
class TaskController extends Controller
{
//在參數前面加上類別即為型別提示技巧
public function test(Request $request)
{
$title = $request->input('title');
return response()->json(['title'=>$title]);
}
}
//app\\Http\\Controllers\\Api\\TaskController.php
namespace App\\Http\\Controllers\\Api;
use Illuminate\\Http\\Request;
class TaskController extends Controller
{
//路徑參數需在依賴注入之後
public function test(Request $request, $id)
{
return response()->json(['id'=>$id]);
}
}
path() 返回請求的路徑訊息。比如接收到的請求路徑是 http://domain.com/foo/bar,則 path () 將回傳 foo/bar:
$uri = $request->path();
//訪問網址 [<http://domain.com/foo/bar>](<https://www.domain.com/foo/bar%EF%BC%8C%E5%89%87>)
//回傳內容 foo/bar
is() 能允許你去確認進來的請求路徑是否符合某種模式,在這方法內你能透過 wildcard(*)來代表任意值
if ($request->is('admin/*')) {
//* 代表任意值
}