【发布时间】:2016-05-27 11:03:44
【问题描述】:
我一直在查看 stackoverflow,但没有找到任何可以回答我的问题的问题,即如何在不获取关联数组的情况下对列表进行洗牌。由于我的代码使用shuffle_assoc我得到了关联数组,但是使用 shuffle 并没有让我到任何地方,所以现在我转向这里。
function shuffle_assoc($list) {
if (!is_array($list)) return $list;
$keys = array_keys($list);
shuffle($keys);
$random = array();
foreach ($keys as $key) {
$random[] = $list[$key];
}
return $random;
}
$arr = array();
$arr[] = "test 1<br>";
$arr[] = "test 2 <br>";
$arr[] = "test 3 <br>";
$arr[] = "test 4 <br>";
print_r(shuffle_assoc($arr));
?>
This is how it looks when I run the code
但是我不想显示Array ([0] => 部分,我只想在每次运行代码时随机打乱测试(1/2/3/4)列表。
【问题讨论】:
-
为什么不直接使用
shuffle($arr); -
已经尝试过 shuffle 并且我也去看了那个帖子,但是它并没有解决我的问题,但是 nospor 的回答确实。
标签: php