gpt4 book ai didi

php - 查询方法不起作用 - 缺少 mysqlnd 驱动程序

转载 作者:行者123 更新时间:2023-11-29 06:49:18 25 4
gpt4 key购买 nike

我的查询类无法在客户的新服务器上运行,因为他们的服务器缺少 mysqlnd 驱动程序。我如何将方法转换为不使用 mysqlnd 并且不搞砸他们所有的类?

function query($query, $params=NULL) {
if($params!=NULL) {
$stmt = $this->mysqli->prepare($query);
//must turn $params into reference array to bind
$ref = array();
foreach ($params as $key => $value) {
$ref[$key] = &$params[$key];
}
call_user_func_array(array($stmt,'bind_param'),$ref);
$stmt->execute();
$result = $stmt->get_result();
} else {
$result = $this->mysqli->query($query);
}
if($result){
$rowArray = array();
while ($myrow = $result->fetch_object()) {
$rowArray[] = $myrow;
}
return $rowArray;
}
return false;
}

最佳答案

一个非常相似的方法使用call_user_func_array()
您可以在 manual page 的评论部分找到一些解决方案。

我不知道为什么 mysqli 需要所有这些不必要的麻烦的东西,而 PDO 是开箱即用的。将您即将成为的代码与此代码进行比较:

function query($query, $params=NULL) {
$stmt = $this->pdo->prepare($query);
$stmt->execute($params);
return $stmt->fetchAll();
}

关于php - 查询方法不起作用 - 缺少 mysqlnd 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16525045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com