如何在php中对多个数组进行排序

如何在php中对多个数组进行排序,php,arrays,sorting,Php,Arrays,Sorting,我创建了一个循环 $i=0; foreach($xml->xpath('//ns2:Soap_Model_SOAP_Hotel_Room') as $rooms) { $room_details[$i]['room_name']=$rooms->name; $room_details[$i]['room_id']=$rooms->id; $room_details[$i]['room_price']=$rooms->price->value; $i+

我创建了一个循环

$i=0;
foreach($xml->xpath('//ns2:Soap_Model_SOAP_Hotel_Room') as $rooms)
{
  $room_details[$i]['room_name']=$rooms->name;
  $room_details[$i]['room_id']=$rooms->id;
  $room_details[$i]['room_price']=$rooms->price->value;
  $i++;
}
并用另一个for循环调用这个数组,但是数组中存储的id处于随机模式,我需要用我的id的assoc模式来排列整个数组

当前显示为

房号:106556,房价:22718.65,房名:豪华
房号:106559,房价:22718.65,房名:豪华
房号:106557,房价:22718.65,房名:豪华
房号:106560,房价:22718.65,房名:豪华
房号:106558,房价:22718.65,房名:豪华
房号:106561,房价:22718.65,房名:豪华
房号:106562,房价:31456.62,房名:俱乐部
房间号:106565,房间价格:31456.62,房间名称:Club
房间号:106563,房间价格:31456.62,房间名称:Club
房间号:106566,房间价格:31456.62,房间名称:俱乐部
房间号:106564,房间价格:31456.62,房间名称:俱乐部

房间id:106567,房间价格:31456.62,房间名称:Club
我建议将房间id指定为密钥,然后将其排序。排序后,要重置键,只需使用
数组\u值
。它将从
0
索引重置它

// assign using room id
foreach ($xml->xpath('//ns2:Soap_Model_SOAP_Hotel_Room') as $rooms) {
    $room_details[$rooms->id]['room_name'] = $rooms->name;
    $room_details[$rooms->id]['room_id'] = $rooms->id;
    $room_details[$rooms->id]['room_price'] = $rooms->price->value;
}
ksort($room_details); // sort by key
$room_details = array_values($room_details); // reassign keys
好的,你们可以使用函数,若你们想比较数组元素的值,若你们想使用键(它们是ID),你们可以使用用户
签出您可以使用对数组进行排序并同时保留相同的密钥

只需使用房间id进行分配,然后密钥排序此处应该有一些内容可以帮助您,但我需要密钥值为1,2,3模式。在密钥重新分配后,如果排序数据也重新分配?@Midhun否,则保留已排序的数组