簡體   English   中英

多維數組排序

[英]Multidimensional array sort

我如何排序“ award_year”,從而所有其他鍵都將遵循排序順序。 除“ 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"
      }
    }

請指教。

可能不是最快的方法,但:

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
}

對於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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM