Joomla升级后点击数据库检查出现错误count(): Argument #1 ($value) must be of type Countable|array, bool given 原

redmaomail 2024-07-25 10:33 阅读数 69 #Joomla

红帽云邮外贸主机

在完成joomla升级后,我们可以点击系统=>数据库检查来查看是否有出现数据库的报错。但最近在做一个升级joomla5的项目时,点击数据库后就出现错误提示:count(): Argument #1 ($value) must be of type Countable|array, bool given

现象

升级完成后,点击系统维护=>数据库按钮后出现报错。如图:

这是什么原因?

出现上面的错误,大概意思是类型不匹配。应该传递的参数是数组但给了一个布尔值。这是典型的PHP错误。理论上在调用count之前应该加一个判断就可以解决。但进一步的分析,发现这个报错的代码是joomla核心的,修改joomla核心并不是很明智的做法,因此,就进一步的分析为什么传递进来的是布尔值。发现这个数据库检查的功能会检查每一个组件的update目录。有一些第三方的扩展的update/sql并不满足joomla5的规范因此出现了错误。知道原因就好解决了。只需要删除掉第三方组件的update目录就可以了。这个update目录并没有任何作用,他只在组件刚刚安装的时候会执行,安装成功后就不会使用了。删除是安全的。

解决方案

删除掉组件com_zwechat组件的mysql/update目录即可。如图:

如果你的删除了之后还没有解决,那么再继续找找其它第三方组件的updates目录删除即可。

最终效果

删除之后,执行结果正常。如图:

 


红帽云邮外贸主机

分享到:
版权声明:本站内容源自互联网,如有内容侵犯了你的权益,请联系删除相关内容。
    红帽云邮外贸主机
热门
    红帽云邮外贸主机
    红帽云邮外贸主机