[英]Multidimensional array sort
How can i sort "award_year" whereby all the other key will follow the sort order. 我如何排序“ award_year”,从而所有其他键都将遵循排序顺序。 All key names except "award_year" will vary in name as well as total keys as well? 除“ award_year”以外的所有键名称在名称以及总键上都会有所不同吗?
array(7) {
["award_year"]=>
array(2) {
[0]=>
string(7) "1999-01"
[1]=>
string(7) "2010-02"
}
["award_title_user"]=>
array(2) {
[0]=>
string(1) "2"
[1]=>
string(2) "tt"
}
["award_description_user"]=>
array(2) {
[0]=>
string(1) "2"
[1]=>
string(3) "ddd"
}
["award_title_lang1"]=>
array(2) {
[0]=>
string(2) "ms"
[1]=>
string(3) "ms2"
}
["award_description_lang1"]=>
array(2) {
[0]=>
string(2) "ms"
[1]=>
string(3) "ms2"
}
}
Please advice. 请指教。
Probably not the fastest way but: 可能不是最快的方法,但:
sort($arrayin['award_year']);
$arrayout = array();
foreach( $arrayin["award_year"] as $key => $value ){
array_push($arrayout['award_year'], $array_in['award_year'][$key]);
array_push($arrayout['award_title_user'], $array_in['award_title_user'][$key]);
//etc
}
for PHP 5.3: 对于PHP 5.3:
//Sample Multi-dimensional Array ($myArray)
Array
(
[0] => Array
(
[award_year] => 2012
[award_title_user] => test2
)
[1] => Array
(
[award_year] => 2011
[award_title_user] => test1
)
)
usort($myArray, function($a, $b) {
return $a['award_year'] - $b['award_year'];
});
print_r($myArray);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.