4

最初我有这个错误说Call to undefined method mysqli_stmt::get_result()然后搜索后我发现我必须为此启用mysqlnd驱动程序。我使用了 godaddy 托管站点,并且我已经启用了 mysqlnd 驱动程序,但我仍然面临同样的问题。在此处输入图像描述我有很多功能,get_result所以解决每一个问题对bind_result我来说都是非常耗时和忙碌的。我该如何解决这个问题假设我有这个查询

$stmt = $this->conn->prepare("SELECT * FROM registeration_table WHERE phone = ?");
            $stmt->bind_param("s", $phone);
            $stmt->execute();
            $user = $stmt->get_result()->fetch_assoc();
            $stmt->close();
            return $user;

为了解决这个错误,我已经通过他的链接Stackoverflow 链接并实现了这个功能

    public function get_result($Statement) {
    $RESULT = array();
    $Statement->store_result();
    for ( $i = 0; $i < $Statement->num_rows; $i++ ) {
        $Metadata = $Statement->result_metadata();
        $PARAMS = array();
        while ( $Field = $Metadata->fetch_field() ) {
            $PARAMS[] = &$RESULT[ $i ][ $Field->name ];
        }
        call_user_func_array( array( $Statement, 'bind_result' ), $PARAMS );
        $Statement->fetch();
    }
    return $RESULT;
}

谢谢你。

4

0 回答 0