Php 从mysqli准备的语句创建数组
我有一个简单的脚本,我试图理解为什么它不起作用,以及如何得到我想要的 我想要得到的是一个数组,称它为Php 从mysqli准备的语句创建数组,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个简单的脚本,我试图理解为什么它不起作用,以及如何得到我想要的 我想要得到的是一个数组,称它为$results,并将数据存储如下 $results -> $row1 -> $field1 $field2 $field3 $field4 $field5 $row2 -> $field1 $field2 $field3
$results
,并将数据存储如下
$results ->
$row1 ->
$field1
$field2
$field3
$field4
$field5
$row2 ->
$field1
$field2
$field3
$field4
$field5
等等
但我甚至不能让mysqli循环出结果,这是我的代码
require_once ('lib/constants.php');
$mysqli = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME) or die('Error connecting to Database.');
$query = "SELECT * FROM employees LIMIT 0, 20";
if($stmt = $mysqli->prepare($query)) {
$stmt->execute();
$row = array();
stmt_bind_assoc($stmt, $row);
while($stmt->fetch()) {
var_dump($row);
}
}
请检查PHP.net上的方法以便更好地理解
下面是一个简单的例子
require_once ('lib/constants.php');
$mysqli = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME) or die('Error connecting to Database.');
$query = "SELECT * FROM employees LIMIT 0, 20";
if ($result = $mysqli->query($query)) {
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
echo $row['myfield'];
}
/* free result set */
$result->free();
}
您应该检查而不是mysqli\u result::fetch\u assoc
$query = "SELECT * FROM employees LIMIT 0, 20";
if ($result = $mysqli->query($query)) {
$array_assoc = $result->fetch_all();
/* free result set */
$result->close();
}