2

我在 Windows 上运行 MAMP。php_mysqli.dll 在 php.ini 文件中启用。

除此之外,在 php info 中它说 mysqlnd 已启用:

phpinfo mysqlind

这是我的 php 的样子:

$connection = connect();
if($stmt = $connection->prepare("SELECT * FROM `users` WHERE `email` = '?'")){
    $stmt->bind_param("s", $email);
    $stmt->execute();
    $result = $stmt->get_result();
}

该行$result = $stmt->get_result()抛出错误

PHP 致命错误:未捕获的错误:调用未定义的方法 mysqli_stmt::get_result()

任何猜测为什么get_result()不工作?

这与已经提出的问题不同,因为所有解决方案都提到未启用 mysqlind,尽管在我的情况下是这样。

4

2 回答 2

3

如果您切换到 PDO,则可以fetchAll改用。PDO 优于 mysqli 有几个原因,其中之一包括在执行之前将数组作为参数传递的能力。

于 2016-07-31T02:31:15.190 回答
2

您可能可以执行以下操作:从此处下载 php 安装:并使用 MAMP php 目录作为安装位置。

于 2016-07-31T00:35:12.470 回答