gpt4 book ai didi

php - 将查询结果转换为二维数组

转载 作者:行者123 更新时间:2023-11-29 12:01:46 25 4
gpt4 key购买 nike

我想将查询结果转换为查询的二维数组

SELECT c.name,c.mobile_number,t.service_time 
FROM CUSTOMER AS c
JOIN TRANSACTION AS t ON c.id = t.customer_id
WHERE t.service_date = '$date'
AND employee_id = '$employee_id

我得到名称(varchar),手机号码(int)和时间(时间格式)。我写了一些代码,但它不起作用:

$results = array();
echo $num_fields=mysqli_num_fields($array1);
echo $num_rows=mysqli_num_rows($array1);
while($line = mysqli_fetch_array($array1))
{
for($i=0;$i<$num_rows;$i++)
{
for($j=0;$j<$num_fields;$j++)
{
$results[$i][$j]=$line[$i][$j];
}
}
}

我得到的结果是:

[["k ","a ","r "],["9 ","8 ","7 "],["0 ","2 ",": "]]

输出仅包含第一个字符。我希望二维数组的每一行都有我的查询结果行。

最佳答案

您可以将结果添加到新数组并将mysqli_fetch_array更改为mysqli_fetch_row:

$results = array();

while ($line = mysqli_fetch_row($array1))
{
$results[] = $line;
}

或者,您可以使用 mysqli_fetch_assoc() 来创建关联数组(例如 $results[0]['name'] 将是 name 第一行的列)。

编辑

如果有重复的列名,您可以使用别名:

SELECT one.name AS one_name,two.name AS Two_name FROM one INNER JOIN 2 USING ...

关联数组将包含 $result[0]['one_name']$result[0]['two_name']

关于php - 将查询结果转换为二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32253596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com