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


Posted in PHP onJune 17, 2016

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 相关文章推荐
PHPEXCEL 使用小记
Jan 06 PHP
无需重新编译php加入ftp扩展的解决方法
Feb 07 PHP
hadoop中一些常用的命令介绍
Jun 19 PHP
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
Oct 30 PHP
php中Ctype函数用法详解
Dec 09 PHP
4种PHP异步执行的常用方式
Dec 24 PHP
php操纵mysqli数据库的实现方法
Sep 18 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
Mar 16 PHP
详解PHP防止直接访问.php 文件的实现方法
Jul 28 PHP
PHP实现百度人脸识别
May 06 PHP
PHP中遍历数组的三种常用方法实例分析
Jun 24 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
Sep 25 PHP
PHP 将数组打乱 shuffle函数的用法及简单实例
Jun 17 #PHP
PHP 数组基本操作方法详解
Jun 17 #PHP
全面了解PHP中的全局变量
Jun 17 #PHP
浅析PHP7新功能及语法变化总结
Jun 17 #PHP
PHP设计模式之迭代器模式
Jun 17 #PHP
浅析PHP中的i++与++i的区别及效率
Jun 15 #PHP
学习PHP session的传递方式
Jun 15 #PHP
You might like
虹吸式咖啡壶操作
2021/03/03 冲泡冲煮
PHP 第二节 数据类型之字符串类型
2012/04/28 PHP
Php无限级栏目分类读取的实现代码
2014/02/19 PHP
POST一个JSON格式的数据给Restful服务实例详解
2017/04/07 PHP
解决laravel资源加载路径设置的问题
2019/10/14 PHP
PHP终止脚本运行三种实现方法详解
2020/09/01 PHP
ie 处理 gif动画 的onload 事件的一个 bug
2007/04/12 Javascript
增强的 JavaScript 的 trim 函数的代码
2007/08/13 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
js取消单选按钮选中示例代码
2013/11/14 Javascript
AngularJS中的$watch(),$digest()和$apply()区分
2016/04/04 Javascript
AngularJS 入门教程之事件处理器详解
2016/08/19 Javascript
利用JavaScript判断浏览器类型及版本
2016/08/23 Javascript
微信小程序 下拉列表的实现实例代码
2017/03/08 Javascript
vue.js动态数据绑定学习笔记
2017/05/19 Javascript
Vue 进入/离开动画效果
2017/12/26 Javascript
详解Vue项目编译后部署在非网站根目录的解决方案
2018/04/26 Javascript
vue实现拖拽效果
2019/12/23 Javascript
详解vue 中 scoped 样式作用域的规则
2020/09/14 Javascript
javascript实现固定侧边栏
2021/02/09 Javascript
Vue单页面应用中实现Markdown渲染
2021/02/14 Vue.js
Flask解决跨域的问题示例代码
2018/02/12 Python
在Python中增加和插入元素的示例
2018/11/01 Python
python+opencv实现高斯平滑滤波
2020/07/21 Python
python函数修饰符@的使用方法解析
2019/09/02 Python
keras中的卷积层&amp;池化层的用法
2020/05/22 Python
韩国爱茉莉太平洋化妆品美国站:Amore Pacific US
2016/10/28 全球购物
承诺书格式范文
2014/06/03 职场文书
金融专业求职信
2014/08/05 职场文书
社区党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
安全员岗位职责
2015/02/10 职场文书
大学生社会实践活动总结报告
2015/05/06 职场文书
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
2021/05/24 Python
利用Python+OpenCV三步去除水印
2021/05/28 Python
 Python 中 logging 模块使用详情
2022/03/03 Python
vue修饰符.capture和.self的区别
2022/04/22 Vue.js