php – 需要替代mysqli_fetch_all

前端之家收集整理的这篇文章主要介绍了php – 需要替代mysqli_fetch_all前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个PHP- mysqli代码可以找到我的本地服务器,但在我的服务器上使用它我得到了
Fatal error: Call to undefined function MysqLi_fetch_all() in /home3/t561257/public_html/admin/database.PHP on line 49

代码的以下部分是问题所在.

function fetch_rows($queryname) {
        $result = $this->connection->query($queryname);
        $row = MysqLi_fetch_all($result,MysqLI_ASSOC);
        return $row;        
    }

我用以下方式使用它

$next_four_rows = $db_link->fetch_rows($query_four_latest);

$db_link是具有fetch_rows方法的类.

我在我的本地服务器上使用PHP 5.5,因为服务器正在运行5.4.27我真的对如何修复它一无所知

如果因为PHP安装 was not compiled with mysqlnd而无法使用MysqLi_fetch_all,则有两个选项:

> Recompile PHP with mysqlnd或者可能从Linux发行版的软件包存储库中安装另一个特定的软件包.
>使用简单的循环:

$data = [];
while ($row = $result->fetch_assoc()) {
    $data[] = $row;
}

您甚至可以创建兼容性回退,而无需更改所有代码

if (!function_exists('MysqLi_fetch_all')) {
    function MysqLi_fetch_all(MysqLi_result $result) {
        $data = [];
        while ($data[] = $result->fetch_assoc()) {}
        return $data;
    }
}

猜你在找的PHP相关文章