消息:count():参数必须是数组或实现 Countable 的对象
Posted
技术标签:
【中文标题】消息:count():参数必须是数组或实现 Countable 的对象【英文标题】:Message: count(): Parameter must be an array or an object that implements Countable 【发布时间】:2021-05-30 20:18:54 【问题描述】:请告诉我怎么了?
public function view($link = null)
$temp = $this->BlogModel->getDetail('link', $link);
if (count($temp) == 1) "this countable"
$data = array(
'app' => $this->app(),
'data' => $temp,
'comments' => $this->BlogCommentModel->getAll(['blog_id' => $temp->id], 'id asc'),
'data_latest' => $this->BlogModel->getLatest(6)
);
$this->BlogModel->updateVisitCount($link);
$this->template->set('title', $data['data']->title . ' | ' . $data['app']->app_name, TRUE);
$this->template->load_view($data['app']->template_frontend.'/detail', $data, TRUE);
$this->template->render();
else
redirect(base_url('blog/'));
;
谢谢
【问题讨论】:
您是否尝试打印此$temp
?
您必须添加更多信息,根据代码无法确定。 $temp 的值是多少。请记录并将其添加到问题中。
如果 $temp
设置为 null、字符串、对象(没有 Countable 实现),count($temp)
将产生错误。也许您应该使用另一种验证方法,例如if (!is_null($temp))...
谢谢,使用 if (!is_null($temp))... is work
【参考方案1】:
这条线是什么?
if (count($temp) == 1) "this countable"
你必须先删除“这个可数” 你能发布错误吗?
【讨论】:
【参考方案2】:使用
if (is_array($temp) && count($temp) == 1) "这个可数"
而不是
if (count($temp) == 1) "这个可数"
【讨论】:
以上是关于消息:count():参数必须是数组或实现 Countable 的对象的主要内容,如果未能解决你的问题,请参考以下文章
消息:count():参数必须是在centos上实现Countable codeigniter的数组或对象
laravel : count(): 参数必须是数组或实现 Countable 的对象
PHP 警告:count(): 参数必须是数组或实现 Countable 的对象
count():参数必须是数组或对象,根据数组大小实现Countable error