如何在php中对数组进行排序?
我有这个数组。如何根据desc或asc对id进行排序如何在php中对数组进行排序?,php,arrays,Php,Arrays,我有这个数组。如何根据desc或asc对id进行排序 Array ( [0] => Array ( [data] => Array ( [id] => 1 [title] => Ferrari [price] => 15 [mod
Array
(
[0] => Array
(
[data] => Array
(
[id] => 1
[title] => Ferrari
[price] => 15
[model] => 1997
[color] => Green
[speed] => 80
)
)
[1] => Array
(
[data] => Array
(
[id] => 3
[title] => Audi
[price] => 255
[model] => 55
[color] => Green
[speed] => 99
)
)
[2] => Array
(
[data] => Array
(
[id] => 4
[title] => BMW
[price] => 55
[model] => 444
[color] => Blue
[speed] => 123
)
)
)
谢谢。您可以使用
usort
:
usort($array, function($a, $b) {
return $a['data']['id'] < $b['data']['id']? -1 : 1;
});
usort($array,function($a,$b){
返回$a['data']['id']<$b['data']['id']?-1:1;
});
您可以使用usort
:
usort($array, function($a, $b) {
return $a['data']['id'] < $b['data']['id']? -1 : 1;
});
usort($array,function($a,$b){
返回$a['data']['id']<$b['data']['id']?-1:1;
});
您可以使用usort
:
usort($array, function($a, $b) {
return $a['data']['id'] < $b['data']['id']? -1 : 1;
});
usort($array,function($a,$b){
返回$a['data']['id']<$b['data']['id']?-1:1;
});
您可以使用usort
:
usort($array, function($a, $b) {
return $a['data']['id'] < $b['data']['id']? -1 : 1;
});
usort($array,function($a,$b){
返回$a['data']['id']<$b['data']['id']?-1:1;
});
我对多维数组排序进行了快速搜索,发现了这个问题。这似乎是一个很好的解决办法
由于将子数组封装在“数据”数组中,因此需要更改函数的第3行:
function subval_sort($a,$subkey) {
foreach($a as $k=>$v) {
$b[$k] = strtolower($v['data'][$subkey]);
}
asort($b);
foreach($b as $key=>$val) {
$c[] = $a[$key];
}
return $c;
}
$sorted_cars = subval_sort($car_array,'id');
print_r($sorted_cars);
我从那里开始,看看它会返回什么。我对多维数组排序进行了快速搜索,找到了这个。这似乎是一个很好的解决办法 由于将子数组封装在“数据”数组中,因此需要更改函数的第3行:
function subval_sort($a,$subkey) {
foreach($a as $k=>$v) {
$b[$k] = strtolower($v['data'][$subkey]);
}
asort($b);
foreach($b as $key=>$val) {
$c[] = $a[$key];
}
return $c;
}
$sorted_cars = subval_sort($car_array,'id');
print_r($sorted_cars);
我从那里开始,看看它会返回什么。我对多维数组排序进行了快速搜索,找到了这个。这似乎是一个很好的解决办法 由于将子数组封装在“数据”数组中,因此需要更改函数的第3行:
function subval_sort($a,$subkey) {
foreach($a as $k=>$v) {
$b[$k] = strtolower($v['data'][$subkey]);
}
asort($b);
foreach($b as $key=>$val) {
$c[] = $a[$key];
}
return $c;
}
$sorted_cars = subval_sort($car_array,'id');
print_r($sorted_cars);
我从那里开始,看看它会返回什么。我对多维数组排序进行了快速搜索,找到了这个。这似乎是一个很好的解决办法 由于将子数组封装在“数据”数组中,因此需要更改函数的第3行:
function subval_sort($a,$subkey) {
foreach($a as $k=>$v) {
$b[$k] = strtolower($v['data'][$subkey]);
}
asort($b);
foreach($b as $key=>$val) {
$c[] = $a[$key];
}
return $c;
}
$sorted_cars = subval_sort($car_array,'id');
print_r($sorted_cars);
我将从那里开始,看看结果如何。您希望得到什么结果?到目前为止您有没有尝试过?
array\u multisort()
。“如何对多维数组排序”。检查您希望得到的结果是什么?到目前为止您有没有尝试过?array\u multisort()
。“如何对多维数组排序”。检查您希望得到的结果是什么?到目前为止您有没有尝试过?array\u multisort()
。“如何对多维数组排序”。检查您希望得到的结果是什么?到目前为止您有没有尝试过?array\u multisort()
。“如何对多维数组排序”。检查