Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从mysqli准备的语句创建数组_Php_Mysql_Mysqli - Fatal编程技术网

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();
}