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 關注
- 171 瀏覽
添加回答
舉報