php打乱数组二维数组多维数组的简单实例

5年以前  |  阅读数:1035 次  |  编程语言:PHP 

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手册,可以打乱多维数组:


    /**
    * Shuffles an associative array recursive
    * 
    * @param array $array
    * @return array
    *
    */

    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;
    }

以上就是小编为大家带来的php打乱数组二维数组多维数组的简单实例全部内容了,希望大家多多支持脚本之家~

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例