LoginSignup
99
103

More than 5 years have passed since last update.

[Laravel]レスポンスをJSON形式で返す方法2つ

Last updated at Posted at 2016-02-04

LaravelではレスポンスをJSON形式で返す方法2つある

response()->json()

まずは公式ドキュメント(5.1LTS)に記載されている方法。

jsonメソッドは自動的にContent-Typeヘッダーをapplication/jsonにセットし、同時に指定された配列をjson_encode PHP関数によりJSONへ変換します。

public function index()
{
    return response()->json(['apple' => 'red', 'peach' => 'pink']);
}

これにより

{
    'apple':'red',
    'peach':'pink'
}

がレスポンスされる。
ドキュメントになるとおり、
Content-Typeもちゃんとapplication/jsonにしてくれる。

配列をreturnする

そして、もう1つの方法。
例えばこんなコードがあるじゃろ。

public function index()
{
    return ['apple' => 'red', 'peach' => 'pink'];
}

んでレスポンスは、、、

{
    'apple':'red',
    'peach':'pink'
}

こうなる。
加えてContent-Typeもちゃんとapplication/jsonにしてくれる。

まとめ

JSON形式で返す時は「配列をreturnする」方法にしてます。
Laravelってこうゆう事ができるからやめられない、止まらない。

99
103
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
99
103