[英]Shuffle inside array php
如何在数组中混洗数组? 我尝试了很多方法,但我做不到。 我认为这很简单,但我坚持这一点。
Array
(
[2] => Array
(
[0] => 12011190
[1] => 12011158
[2] => 12011583
[3] => 12012107
[4] => 12011222
[5] => 12010638
[6] => 12013836
[7] => 12012232
[8] => 12011256
[9] => 12010007
[10] => 12012531
[11] => 12012182
[12] => 12013253
)
[6] => Array
(
[0] => 12011565
[1] => 12010020
[2] => 12011352
[3] => 12014366
[4] => 12011879
[5] => 12011449
)
)
我想在数组中随机播放。 我希望解释一下......
据我所知,你可以这样做(假设你想独立地改组每个子阵列):
foreach($array AS &$element) {
shuffle($element);
}
或者像这样:
array_walk($array, function(&$value, $key) {
shuffle($value);
});
这是一个可以使用的递归多级函数。
function shuffle_array($arr) {
if (!is_array($arr)) return $arr;
shuffle($arr);
foreach ($arr as $key => $a) {
if (is_array($a)) {
$arr[$key] = shuffle_array($a);
}
}
return $arr;
}
print_r(shuffle_array($array));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.