阅读量:0
fetch_array()
函数本身并不直接支持预处理语句。但是,你可以在 PHP 中使用预处理语句(Prepared Statements)与 fetch_array()
或其他类似的函数一起使用。这里有一个使用 MySQLi 扩展的例子:
// 创建数据库连接 $mysqli = new mysqli("localhost", "username", "password", "database"); // 检查连接 if ($mysqli->connect_error) { die("Connection failed: " . $mysqli->connect_error); } // 准备 SQL 语句 $stmt = $mysqli->prepare("SELECT id, name FROM users WHERE age > ?"); $stmt->bind_param("i", $age); // 设置参数并执行查询 $age = 25; $stmt->execute(); // 绑定结果变量 $stmt->bind_result($id, $name); // 获取结果并输出 while ($stmt->fetch()) { echo "id: " . $id . " - Name: " . $name . "<br>"; } // 关闭连接 $stmt->close(); $mysqli->close();
在这个例子中,我们使用了预处理语句来执行一个带有参数的 SQL 查询。然后,我们使用 fetch()
函数从结果集中获取数据,并将其输出。注意,这里我们使用的是 MySQLi 扩展,而不是已弃用的 mysql_*
函数。
如果你想使用 PDO(PHP Data Objects)扩展,可以参考以下示例:
// 创建数据库连接 $dsn = "mysql:host=localhost;dbname=database;charset=utf8"; $pdo = new PDO($dsn, "username", "password"); // 准备 SQL 语句 $stmt = $pdo->prepare("SELECT id, name FROM users WHERE age > :age"); $stmt->bindParam(':age', $age); // 设置参数并执行查询 $age = 25; $stmt->execute(); // 获取结果并输出 while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "id: " . $row['id'] . " - Name: " . $row['name'] . "<br>"; }
在这个例子中,我们使用了 PDO 扩展来执行预处理语句。我们使用 fetch()
函数从结果集中获取数据,并将其输出。注意,这里我们使用的是 PDO::FETCH_ASSOC
常量来指定返回关联数组。