【问题标题】:PHP error: Warning: count(): Parameter must be an array or an object that implements CountablePHP错误:警告:count():参数必须是实现Countable的数组或对象
【发布时间】:2019-06-20 05:50:18
【问题描述】:

我将我的 Wordpress 网站从 PHP 5.6 更新到 7.2,并注意到更新后我的 Wordpress 后端出现错误。它说:

Warning:  count(): Parameter must be an array or an object that implements 
Countable in <b>/homepages/36/d362586048/htdocs/genag/wp- 
content/themes/genag- 
theme/framework/admin/functions/functions.mediauploader.php on line 127

我已经包含了该行的代码和它下面的 2 行。任何帮助将不胜感激。

if ( count( $_posts ) ) {
$_id = $_posts->ID;
} else {

【问题讨论】:

  • 接受我的编辑。如果没有编辑,您的问题看起来很糟糕。

标签: php wordpress


【解决方案1】:

$_posts 似乎是一个对象,您应该像使用对象$_posts-&gt;ID 一样使用它。所以不能像数组一样计算。

if ( $_posts ) {

应该做的工作

【讨论】:

  • 解决了!谢谢。
【解决方案2】:

http://php.net/manual/en/function.count.php

您可以在php中使用is_countable()函数来检查一个对象是否支持计数功能。

【讨论】:

    【解决方案3】:

    在 PHP 7.2 中,count() 方法不支持 Null 作为参数。

    在我的一个旧的基于 Avada 主题的 wordpress 网站中,我有相同的 error

    我已经使用以下修改解决了它。

    if ( (!empty($_posts)) && (count( $_posts ) ) { $_id = $_posts->ID; } else {
    

    【讨论】:

      猜你喜欢
      • 2019-08-15
      • 2020-04-08
      • 2018-12-19
      • 1970-01-01
      • 2018-09-10
      • 2020-01-18
      • 2019-10-18
      • 2019-01-06
      • 2020-01-27
      相关资源
      最近更新 更多