2015-09-27 27 views
-2

如何根據「季節」字段的值,然後是「系列」字段的值來排序此數組?並保存鍵按值排序多維數組並保存

 Array 
     (
      [2] => Array 
       (
        [0] => Array 
         (
          [season] => 2 
          [series] => 3 
          [title] => Boom 
         ) 

        [1] => Array 
         (
          [season] => 2 
          [series] => 1 
          [title] => Boom 
         ) 

        [2] => Array 
         (
          [season] => 2 
          [series] => 2 
          [title] => Boom 
         ) 

       ) 

      [1] => Array 
       (
        [0] => Array 
         (
          [season] => 1 
          [series] => 1 
          [title] => Boom 
         ) 

        [1] => Array 
         (
          [season] => 1 
          [series] => 3 
          [title] => Boom 
         ) 

        [2] => Array 
         (
          [season] => 1 
          [series] => 2 
          [title] => Boom 
         ) 

       ) 
     ) 
    ) 

usort,ksort功能不保存密鑰,而是由季節和一系列價值觀真的好

usort功能後整理:

 Array 
     (
      [0] => Array 
       (
        [0] => Array 
         (
          [season] => 1 
          [series] => 1 
          [title] => Boom 
         ) 

        [1] => Array 
         (
          [season] => 1 
          [series] => 2 
          [title] => Boom 
         ) 

        [2] => Array 
         (
          [season] => 1 
          [series] => 3 
          [title] => Boom 
         ) 

       ) 

      [1] => Array 
       (
        [0] => Array 
         (
          [season] => 2 
          [series] => 1 
          [title] => Boom 
         ) 

        [1] => Array 
         (
          [season] => 2 
          [series] => 2 
          [title] => Boom 
         ) 

        [2] => Array 
         (
          [season] => 2 
          [series] => 3 
          [title] => Boom 
         ) 

       ) 
     ) 

誰能幫我解決這個問題?

+0

你怎麼數組?從數據庫? – SuperDJ

+0

是的,從數據庫中 – Dizzy

+0

然後直接在查詢中進行排序。對於1 SQL更快,然後PHP 2它是更清潔 – SuperDJ

回答

0

解決了array_walk

array_walk($arr, function($a, $b){ 
     return $a['season'] - $b['season']; 
    });