1 回答
TA贡献1770条经验 获得超3个赞
正如我所见,您问题中的问题是您正在尝试计算一个非数组或不可数的对象。
思绪
在您的整个代码中,您没有编写
count()
似乎导致问题的原因,为什么?$q->row();
当您自己将结果限制为 1 时,为什么还需要计数// as you said the problem is here $row = $q->row();
可能的解决方案
当您使用row()
ie时,$q->row();
您会得到一个不可数的对象,
// row() dummy data
stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
但是当你使用result()ie时$q->result();,它会产生一个对象数组,或者在 的情况下result_array(),一个数组数组,即使你将它们限制为一个。
// result() dummy data -- same as result_object()
(
[0] => stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
)
// result_array() dummy data
Array
(
[0] => Array
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
)
它们现在都是一个数组,因此是可数的。
所以,如果你必须计算,使用此外,如果你想计算“结果”的数量,你可以使用which will return 3 here。
$q->row();
count((array) ($q->row()));
{id}, {event_id}, {event_image}
希望对你有帮助。
- 1 回答
- 0 关注
- 109 浏览
添加回答
举报