php打乱数组二维数组多维数组
                            发表时间:2014-02-18 11:36作者:网络人气:更新时间:2025-10-28 08:41:56
                         
                        
                              php中的shuffle函数只能打乱一维数组,有什么办法快速便捷的打乱多维数组?手册上提供了
    - <?php   
- function shuffle_assoc($list) {   
-   if (!is_array($list)) return $list;   
-   $keys = array_keys($list);   
-   shuffle($keys);   
-   $random = array();   
-   foreach ($keys as $key)   
-     $random[$key] = $list[$key];   
-   return $random;   
- }   
- ?>  
上面这个是针对二维数组的!
 
下面针对多维数组的乱序方法?尽可能的方便快速:
    - <?php   
- function shuffle_assoc($list) {   
- if (!is_array($list)) return $list;   
-   
- $keys = array_keys($list);   
- shuffle($keys);   
- $random = array();   
- foreach ($keys as $key)   
- $random[$key] = shuffle_assoc($list[$key]);   
-   
- return $random;   
- }   
- ?> 
以下函数也是出自php手册,可以打乱多维数组:
    -  
-  
-  
-  
-  
-  
-   
-   
- function rec_assoc_shuffle($array)  
- {  
-   $ary_keys = array_keys($array);  
-   $ary_values = array_values($array);  
-   shuffle($ary_values);  
-   foreach($ary_keys as $key => $value) {  
-     if (is_array($ary_values[$key]) AND $ary_values[$key] != NULL) {  
-       $ary_values[$key] = rec_assoc_shuffle($ary_values[$key]);  
-     }  
-     $new[$value] = $ary_values[$key];  
-   }  
-   return $new;  
- } 
 
                         
                        
                        
                        
                        
 
                    
网友评论