错误消息 "Call to undefined method mysqli_result::fetch_all()" 表明您正在尝试在一个 mysqli_result 对象上调用 fetch_all()
方法,但是该方法在 mysqli_result 类中是未定义的。
这个错误通常出现在以下两种情况下:
-
您的 PHP 版本太低。
fetch_all()
方法是在 PHP 5.3.0 及以上版本的 mysqli 扩展中引入的。如果您的 PHP 版本低于 5.3.0,您将无法使用fetch_all()
方法。您可以通过升级 PHP 版本来解决这个问题。 -
您正在使用的是 mysqlnd(MySQL Native Driver)扩展,而不是默认的 libmysqlclient 库。
fetch_all()
方法仅在 mysqlnd 扩展中可用。如果您的 PHP 编译配置中未启用 mysqlnd 扩展,您将无法使用fetch_all()
方法。您可以通过重新编译 PHP 并启用 mysqlnd 扩展来解决这个问题。
如果您无法升级 PHP 版本或重新编译 PHP
一般都是第二种情况解决方法
sudo yum remove php-mysqli -y
删除源php-mysqli
php -m
查询对应的版本php和mysql
sudo yum search mysqlnd
找到对应自己php的版本进行下载(我的是72w)所有我下载的是
sudo yum install php72w-mysqlnd -y