MYBB 警告 [2] count():参数必须是数组或实现 Countable 的对象 - 行:906
Posted
技术标签:
【中文标题】MYBB 警告 [2] count():参数必须是数组或实现 Countable 的对象 - 行:906【英文标题】:MYBB Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 906 【发布时间】:2018-10-19 18:35:24 【问题描述】:如果重复,对不起,但我不知道如何在 php 7.24 上修复这个 MyBB 1.8.15 错误 警告 [2] count():参数必须是数组或实现 Countable 的对象 - 行:906
// Build the threaded post display tree.
$query = $db->query("
SELECT p.username, p.uid, p.pid, p.replyto, p.subject, p.dateline
FROM ".TABLE_PREFIX."posts p
WHERE p.tid='$tid'
$visible
ORDER BY p.dateline
");
while($post = $db->fetch_array($query))
if(!$postsdone[$post['pid']])
if($post['pid'] == $mybb->input['pid'] || ($isfirst && !$mybb->input['pid']))
$postcounter = count($postsdone);
$isfirst = 0;
$tree[$post['replyto']][$post['pid']] = $post;
$postsdone[$post['pid']] = 1;
$threadedbits = buildtree();
$posts = build_postbit($showpost);
eval("\$threadexbox = \"".$templates->get("showthread_threadedbox")."\";");
$plugins->run_hooks("showthread_threaded");
第 906 行出错的是$postcounter = count($postsdone);
【问题讨论】:
【参考方案1】:如果 $postsdone 未被评估为“可计数”(在这种情况下,如果它不是数组),则会发生此错误。我将在执行 count($postsdone) 之前验证 $postsdone 是一个数组。例如:
if(is_array($postsdone))
$postcounter = count($postsdone);
else
// set $postcounter to whatever you want it be...
【讨论】:
以上是关于MYBB 警告 [2] count():参数必须是数组或实现 Countable 的对象 - 行:906的主要内容,如果未能解决你的问题,请参考以下文章
PHP 警告:count(): 参数必须是数组或实现 Countable 的对象
警告:count():参数必须是一个实现Countable的数组或对象(在数组中是多维的)
PHP错误:警告:count():参数必须是实现Countable的数组或对象
PHP警告消息:count():参数必须是实现Countable的数组或对象[重复]
./libraries/plugin_interface.lib.php#551 count() 中的警告:参数必须是数组或实现 Countable 的对象
PHP 警告:count():参数必须是在 C:\\htdocs\my.php 中实现 Countable 的数组或对象 [关闭]