我有一个数组,而且它很大。很大。它是一家房地产公司。我想根据每个家庭的卧室数量将阵列分成几个部分。因此理想情况下,所有具有0间卧室的条目(如下图所示)将被设置为一个数组,而将1设置为另一个数组。等...
这可能吗?
object(SimpleXMLElement)#124 (1) {
["unit"]=>
array(40) {
[0]=>
object(SimpleXMLElement)#246 (1) {
["@attributes"]=> array(28) {
["mlsnumber"]=> string(8) "A1837040"
["type"]=> string(0) ""
["unit"]=> string(3) "607"
["maintenancefee"]=> string(4) "1609"
["price"]=> string(6) "890000"
["salesprice"]=> string(0) ""
["bath"]=> string(1) "1"
["hbath"]=> string(1) "0"
["beds"]=> string(1) "0"
["sqft"]=> string(3) "747"
["sqftm"]=> string(5) "69.40"
["pricesqft"]=> string(8) "1,191.43"
["lat"]=> string(16) "25.7683201213024"
["lng"]=> string(16) "-80.132474899292"
["pricemeters"]=> string(9) "12,824.21"
["pricechange"]=> string(5) "-6.32"
["dom"]=> string(3) "181"
["reo"]=> string(1) "N"
["shortsale"]=> string(1) "N"
["dropprice"]=> string(0) ""
["pets"]=> string(3) "Yes"
["furnished"]=> string(1) "U"
["FloorLevel"]=> string(1) "6"
}
}
答案 0 :(得分:1)
循环遍历数组并将当前数组推入新数组,而新数组的索引是当前数组的卧室数。您需要先将对象转换为数组,然后再按照以下方式进行转换:
foreach($all_units as $unit){
if(!isset($new[$unit['beds']])){
$new[$unit['beds']] = array();
}
array_push($new[$unit['beds']],$unit);
}
print_r($new);
答案 1 :(得分:0)
假设$arr
保存您的结果,请尝试
$result = array();
foreach($arr['unit'] as $prop){
$result[$prop["beds"]][] = $prop;
}