gpt4 book ai didi

php 来自按特定记录分组的数组的回显记录

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

我有两张 table :

房间
room_id>>>room_name

1       foot massage2       face massage3       back massage

ORDERS
room_id >>>start_date>>>>>>>end_date>>>>>>>>price

1       2012.09.10      2012.09.11      1001       2012.09.11      2012.09.13      2002       2012.11.11      2012.11.13      1003       2012.12.11      2012.12.13      500

I want to out put results like this:

room number 1:

2012.09.10      2012.09.11      1002012.09.11      2012.09.13      200

room number 2:

2012.11.11      2012.11.13      100

room number 3:

2012.12.11      2012.12.13      500

code:

$query_spa = "SELECT 
rooms.room_id,
rooms.room_name,
orders.start_date,
orders.end_date,
orders.price
FROM rooms
INNER JOIN orders
ON
rooms.room_id =orders.room_id";

$spa = mysql_query($query_spa, $localhost) or die(mysql_error());
$results = array();
while($line = mysql_fetch_array($spa, MYSQL_ASSOC)){
$results[] = $line;
}


$groups = array();
foreach($results as $item)
$groups[$item['room_id']][] = $item;
foreach($groups as $value => $items)
echo 'room number ' . $value . ' : ' ;
for ($i=0; $i< count($items);$i++)
{
echo $items[$i]['start_date'] ;
echo $items[$i]['end_date'] ;
echo $items[$i]['price'] ;
}

输出:

1号房:2号房:3号房:2012.12.11 2012.12.13 500

最佳答案

试试这个:

$groups = array();
foreach($results as $item)
$groups[$item['room_id']][] = $item;

foreach($groups as $value => $items)
{
echo 'room number ' . $value . ' : ' ;
foreach ($items as $item)
{
echo $item['start_date'] ;
echo $item['end_date'] ;
echo $item['price'] ;
}
}

您可以使用简单的 foreach 遍历子项。但最好在获取步骤上进行组排序:
while($line = mysql_fetch_array($spa, MYSQL_ASSOC)){
$groups[$line['room_id']][] = $line;
}

所以你在获取后立即得到排序结果。

关于php 来自按特定记录分组的数组的回显记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12383739/

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