猿问

Laravel 请求是一个数组但不被 count() 识别

我通过 axios.post 请求将数组传递到我的控制器中。我正在尝试获取传递给控制器的 $request 数组的长度。但是,我不断收到“参数必须是一个数组或一个实现 Countable 的对象”错误。


这是我的数组的样子:


array (

  0 => 

  array (

    'text' => 'It is this',

    'question_id' => 98,

  ),

  1 => 

  array (

    'text' => 'And it is that',

    'question_id' => 98,

  ),

  2 => 

  array (

    'text' => 'Also a little bit of this',

    'question_id' => 98,

  ),


这是我尝试过的:


$count = sizeof($request));


$count = $request->length;


$count = count($request);

唯一取得一点点成功的事情就是:


$count = count($request[0])

这将返回 2,这是第一个数组中的元素。它计算文本和 question_id。虽然这是一个很好的进步,但这不是我想要的


我希望看到的是整个 $request 对象的长度。在我上面给出的例子中,我想接收 2,(0,1,2 的结尾)或 3(0,1,2 的计数)。


慕斯709654
浏览 216回答 2
2回答

江户川乱折腾

如果$request是 an Illuminate\Http\Request,则不能直接计数。不过,您可以计算$request->all()或$request->input()。

隔江千里

关于什么:count($request->all());
随时随地看视频慕课网APP
我要回答