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 相关文章推荐
提问的智慧(2)
Oct 09 PHP
PHP静态类
Nov 25 PHP
php中通过虚代理实现延迟加载的实现代码
Jun 10 PHP
php循环语句 for()与foreach()用法区别介绍
Sep 05 PHP
PHP无限分类(树形类)的深入分析
Jun 02 PHP
php仿QQ验证码的实例分析
Jul 01 PHP
php 获取页面中指定内容的实现类
Jan 23 PHP
PHP解决URL中文GBK乱码问题的两种方法
Jun 03 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
thinkphp实现分页显示功能
Dec 03 PHP
Symfony2针对输入时间进行查询的方法分析
Jun 28 PHP
tp5修改(实现即点即改)
Oct 18 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
PHP读取PDF内容配合Xpdf的使用
2012/11/24 PHP
深入理解curl类,可用于模拟get,post和curl下载
2013/06/08 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
php fread读取文件注意事项
2016/09/24 PHP
php类自动装载、链式操作、魔术方法实现代码
2017/07/23 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
2016/12/17 Javascript
React服务端渲染(总结)
2017/07/01 Javascript
JS图片轮播与索引变色功能实例详解
2017/07/06 Javascript
浅析Python多线程下的变量问题
2015/04/28 Python
教你使用python画一朵花送女朋友
2018/03/29 Python
windows安装TensorFlow和Keras遇到的问题及其解决方法
2019/07/10 Python
利用python实现周期财务统计可视化
2019/08/25 Python
Windows下python3安装tkinter的问题及解决方法
2020/01/06 Python
python高级特性简介
2020/08/13 Python
使用CSS3的appearance属性改变元素的外观的方法
2015/12/12 HTML / CSS
CSS3中设置3D变形的transform-style属性详解
2016/05/23 HTML / CSS
世界最大的海报和艺术印刷商店:AllPosters.com
2017/02/01 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
中科创达面试题
2016/12/28 面试题
《少年王冕》教学反思
2014/04/11 职场文书
幸福家庭标语
2014/06/27 职场文书
领导干部个人整改措施落实情况汇报
2014/10/29 职场文书
2014年酒店前台工作总结
2014/11/14 职场文书
单位租房协议书范本
2014/12/04 职场文书
房地产销售主管岗位职责
2015/02/13 职场文书
综合素质评价自我评价
2015/03/06 职场文书
关于成立领导小组的通知
2015/04/23 职场文书
2015年学校综合治理工作总结
2015/07/20 职场文书
使用pandas生成/读取csv文件的方法实例
2021/07/09 Python