Home  >  Article  >  php教程  >  php打乱数组二维数组多维数组的简单实例,打乱二维数组

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

WBOY
WBOYOriginal
2016-07-06 14:24:50860browse

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

php中的shuffle函数只能打乱一维数组,有什么办法快速便捷的打乱多维数组?手册上提供了

<&#63;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; 
} 
&#63;>

上面这个是针对二维数组的!

下面针对多维数组的乱序方法?尽可能的方便快速

<&#63;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; 
} 
&#63;>

以下函数也是出自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打乱数组二维数组多维数组的简单实例全部内容了,希望大家多多支持帮客之家~

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn