Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.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 从查询在while循环中创建关联数组_Php_Mysql_Sql_Arrays - Fatal编程技术网

Php 从查询在while循环中创建关联数组

Php 从查询在while循环中创建关联数组,php,mysql,sql,arrays,Php,Mysql,Sql,Arrays,我得到一个例子: <?php $shop = array( array( Title => "rose", Price => 1.25, Number => 15 ), array( Title => "daisy", Price => 0.75, Numb

我得到一个例子:

<?php 
$shop = array( array( Title => "rose", 
                  Price => 1.25,
                  Number => 15 
                ),
           array( Title => "daisy", 
                  Price => 0.75,
                  Number => 25,
                ),
           array( Title => "orchid", 
                  Price => 1.15,
                  Number => 7 
                )
         );
?>

你在找这个吗?这将提供$预订,其结构与您显示的结构类似

$result2 = mysqli_query($con, "SELECT r.id AS id, CONCAT(g.fname,' ',g.lname) AS name,
                                    r.arrival AS arrival, r.departure AS departure 
                                    FROM reservations r JOIN guests g ON r.guest = g.id
                                    WHERE r.unit = ".$unit_id."");

$reservations = array();  // makes sure the array exists in case result set is empty
while ($row = mysqli_fetch_assoc($result2))
    {
        $reservations[] =   array (id => $row['id'],
                                      name => $row['name'],
                                      arrival => $row['arrival'],
                                      departure => $row['departure'],
                                    );

    }
访问权限如下:

foreach ($reservations as $row){
    echo $row["name"]." arrival ". $row["arrival"]; 
    echo "<br />"; 
}
foreach($row形式的预订){
echo$row[“name”]“arrival”。$row[“arrival”];
回声“
”; }
您还可以访问:

for ($row = 0; $row<count($reservations); $row++){
    echo $reservations[$row]["name"]." arrival ". $reservations[$row]["arrival"]; 
    echo "<br />"; 
}

for($row=0;$row您在找这个吗?这将为$reservations提供与您显示的结构类似的结构

$result2 = mysqli_query($con, "SELECT r.id AS id, CONCAT(g.fname,' ',g.lname) AS name,
                                    r.arrival AS arrival, r.departure AS departure 
                                    FROM reservations r JOIN guests g ON r.guest = g.id
                                    WHERE r.unit = ".$unit_id."");

$reservations = array();  // makes sure the array exists in case result set is empty
while ($row = mysqli_fetch_assoc($result2))
    {
        $reservations[] =   array (id => $row['id'],
                                      name => $row['name'],
                                      arrival => $row['arrival'],
                                      departure => $row['departure'],
                                    );

    }
访问权限如下:

foreach ($reservations as $row){
    echo $row["name"]." arrival ". $row["arrival"]; 
    echo "<br />"; 
}
foreach($row形式的预订){
echo$row[“name”]“arrival”。$row[“arrival”];
回声“
”; }
您还可以访问:

for ($row = 0; $row<count($reservations); $row++){
    echo $reservations[$row]["name"]." arrival ". $reservations[$row]["arrival"]; 
    echo "<br />"; 
}
对于($row=0;$row这个呢:

$result2 = mysqli_query($con, "SELECT r.id AS id, CONCAT(g.fname,' ',g.lname) AS name,
                               r.arrival AS arrival, r.departure AS departure 
                               FROM reservations r JOIN guests g ON r.guest = g.id
                               WHERE r.unit = ".$unit_id."");
while($row = mysqli_fetch_assoc($result2) $reservations[] =   $row;
本说明:

$reservations[] = $row;
意味着$reservations是一个数组,我们将在下一个键上用$row追加此数组($reservations[next key]=$row)

这是怎么回事:

$result2 = mysqli_query($con, "SELECT r.id AS id, CONCAT(g.fname,' ',g.lname) AS name,
                               r.arrival AS arrival, r.departure AS departure 
                               FROM reservations r JOIN guests g ON r.guest = g.id
                               WHERE r.unit = ".$unit_id."");
while($row = mysqli_fetch_assoc($result2) $reservations[] =   $row;
本说明:

$reservations[] = $row;

意味着$reservations是一个数组,我们将在下一个键上用$row追加这个数组($reservations[next key]=$row)

查询将返回
x
行数。因此我想对此进行说明。对我来说,这看起来就像每次迭代都会重新创建数组,并且在完成时只包含查询中的最后一行。如果查询返回的行数是多少,它将使用
x
元素数创建$reservation。好吗。如何访问一行?例如,在我的第一个示例中,可以这样访问数据:
For($row=0;$row<3;$row++){echo$shop[$row][“Title”]。“costs”。“$shop[$row][“Price”]”。您可以得到“$shop[$row][“Number”];echo”
“;}
好的,我稍后会尝试一下,看看是否一切都正常。看起来会。非常感谢。查询将返回
x
行数。因此我想对此进行说明。对我来说,这看起来就像每次迭代都会重新创建数组,并且在完成时只包含查询中的最后一行。它将创建$with
x
元素数,如果这是查询返回的行数。好的。如何访问行?例如,在我的第一个示例中,可以这样访问数据:
For($row=0;$row<3;$row++){echo$shop[$row][“Title”]。“costs”。$shop[$row][“Price”]。“$shop[$row][“number”];echo“
”;}
好的,我稍后会尝试一下,看看是否一切正常。看起来好像一切正常。非常感谢。您将如何访问数据?例如:$reservations[0]['name']谢谢。答案将交给第一响应者,但出于简单起见,我可能最终使用您的答案。您将如何访问数据?例如:$reservations[0]['name']谢谢。答案会交给第一响应者,但出于简单的考虑,我最终可能会使用你的答案。