從 laravel 路由或控制器回傳資料時,它們會自動作為 JSON 資料回傳。這很酷,但是將這些資料讀入網頁很困難。因為它們是行內的,并且很難識別元素。我知道我可以使用類似的東西:
在火狐瀏覽器中
這在 Google Chrome 中不起作用(在我的設備中)。
uj5u.com熱心網友回復:
如果使用該response()->json()方法生成 json 回應,則可以在第四個引數中傳入編碼選項。
Route::get('usersAsJson', function(){
return response()->json(DB::table('users')->limit(3)->get(), 200, [], JSON_PRETTY_PRINT);
});
如果您計劃在很多地方這樣做,我建議定義一個新的回應宏(例如prettyJson())并使用它來稍微清理代碼。
將此添加到您的AppServiceProvider::boot()方法中:
Illuminate\Support\Facades\Response::macro('prettyJson', function ($data = [], $status = 200, array $headers = [], $options = 0) {
return Illuminate\Support\Facades\Response::json($data, $status, $headers, JSON_PRETTY_PRINT | $options);
});
然后你可以prettyJson在你的回應中使用新方法,它會為你添加漂亮的列印選項(并且仍然保留原始json()方法的所有其他功能):
Route::get('usersAsJson', function(){
return response()->prettyJson(DB::table('users')->limit(3)->get());
});
uj5u.com熱心網友回復:
https://www.php.net/manual/en/json.constants.php#constant.json-pretty-print
return json_decode(DB::table('users')->limit(3)->get(), JSON_PRETTY_PRINT);
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/387249.html
