Php api json响应不以数组形式出现

Php api json响应不以数组形式出现,php,laravel,rest,Php,Laravel,Rest,首先,我对拉雷维尔还不熟悉 这是我的控制器 $itemsList=Items::all()->where('shop_id',$request->shop_id); return response()->json(['data'=>$itemsList]); 这就是答案 { "data": { "10": { "id": 11, "shop_id": 1, "title":

首先,我对拉雷维尔还不熟悉

这是我的控制器

$itemsList=Items::all()->where('shop_id',$request->shop_id);

return response()->json(['data'=>$itemsList]);
这就是答案

{
    "data": {
        "10": {
            "id": 11,
            "shop_id": 1,
            "title": "Test",
            "price_nd": 12,
            "price_wd": 10,
            "updated_at": "2019-11-14 00:00:00",
            "created_at": "2019-11-14 00:00:00"
        },
        "11": {
            "id": 12,
            "shop_id": 1,
            "title": "Test",
            "price_nd": 12,
            "price_wd": 10,
            "updated_at": "2019-11-14 00:00:00",
            "created_at": "2019-11-14 00:00:00"
        },
        "14": {
            "id": 15,
            "shop_id": 1,
            "title": "Test",
            "price_nd": 12,
            "price_wd": 10,
            "updated_at": "2019-11-14 00:00:00",
            "created_at": "2019-11-14 00:00:00"
        }
    }
}
问题是我想返回项目的数组列表

我尝试了很多方法,但我不知道问题出在哪里,也不知道我错过了什么

return response(['data' => $itemsList]);

试试。使用get()方法

get()

all()
方法不适用于where条件。
get()
方法可用于使用其他条件

请尝试此代码


仍然没有变化,只需执行dd($itemsList);看看会发生什么..dd()函数在Laravel(php)中用于调试目的。如果在从数据库获取数据时遇到问题,请使用此函数。
$itemsList=Items::where('shop_id',$request->shop_id)->get();

return response()->json(['data'=>$itemsList]);
  $itemsList=Items::where('shop_id',$request->shop_id)->get();
  dd($itemsList); // add this step in your code
  return response(['data' => $itemsList]);