[Laravel]WebAPIの内容がソートされていない

Laravelロゴ

LaravelでCollectionでソートしたデータをJSONで返却して、JavaScriptで表示させたが、なぜかソートされていない。

理由

JSONオブジェクトは連想配列は順番は保証されずキー名基準になるため無意味。
Collection::sortBy()だけでは、連想配列のキーはそのままで順番だけかわるため、javascriptに持って行った時にソートされていないことになってしまう。

ソートした後で、Collection::values()メソッドでキーを振り直すか
Query側(OrderByメソッド)でソートする

のどちらかで対応する必要があります。

タイトルとURLをコピーしました