MySQLi - 获取数组和预准备语句


MySQLi - Fetch Array and Prepared Statement

我想显示表中的行,但它不起作用,它没有回显任何东西。

$query = "SELECT * FROM table ORDER BY date DESC LIMIT ?, 10";
$stmt = $mysqli->stmt_init();
if ($stmt->prepare($query)) {
    $stmt->bind_param("i", $row_start);
    $stmt->execute();
    $stmt->bind_result($result);
    $stmt->fetch();
    $stmt->close();
}
while($row = mysqli_fetch_array( $result )) {
    echo $row['title'];
}

我有旧 mysql ext 的代码,它可以工作。试图用mysqli获得相同的结果。

阅读下面的链接:-

Mysqli 抽象,从预准备语句中获取数组

call_user_func_array(...) 函数只是在具有给定数组的 $query 对象上调用 bindParam 或 bind_result 方法,就好像您提供了数组的每个元素作为方法参数一样。

您可能希望使用以下代码检查遇到问题的 SQL 语句。为了使其完全可测试,我重写了它,因为原始代码取决于抽象层中的语句类。