欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Laravel如何返回JSON数据?

程序员文章站 2022-05-14 13:56:07
...

Laravel如何返回JSON数据?

Laravel如何返回 JSON 数据?

在控制器或者闭包路由里,如果返回数组或者模型(或者集合)的话,Laravel 会自动识别并自动转为 json 响应:

// 直接返回数组
Route::get('/request-json-array', function(){
    $array = array('foo', 'bar');
    // 返回的就是 json 响应
    return $array;
});
// 或者返回模型/集合
Route::get('/request-json-model', function(){
    // User 是  eloquent 模型
    return User::all();
});

或者可以使用以下方法:

return response()->json(['name' => 'Abigail', 'state' => 'CA']);

使用 ->json() 的好处是可以自定义更多的响应信息,如状态码、头信息等。json() 方法的定义如下:

/**
* 返回一个新的 JSON 响应
*
* @param string|array $data
* @param int $status
* @param array $headers
* @param int $options
* @return \Symfony\Component\HttpFoundation\Response 
* @static 
*/
public static function json($data = array(), $status = 200, $headers = array(), $options = 0){
    return \Illuminate\Routing\ResponseFactory::json($data, $status, $headers, $options);
}

更多相关知识,请访问PHP中文网

相关标签: php laravel