我有一个包含值的数组,
$member[1] = "John";
$member[2] = "Mary";
$member[3] = "Berry";
$member[4] = "James";
$member[5] = "Lincoln";
我可以使用
随机显示它们echo $member[rand(1,5)];
echo $member[rand(1,5)];
echo $member[rand(1,5)];
echo $member[rand(1,5)];
echo $member[rand(1,5)];
但是这样,会员可以出现两次甚至更多! 只有一次随机展示它们的正确和专业方法是什么?
答案 0 :(得分:1)
如果您想以随机顺序使用整个数组,请使用shuffle
。
shuffle($member);
foreach($member as $memberName) {
echo $memberName;
}
如果要随机使用array_rand
从数组中选择一个或多个元素。
假设您要随机选择数组中的3个成员,并保证您永远不会选择相同的数组值两次。
foreach(array_rand($member, 3) as $key) {
echo $member[$key];
}
答案 1 :(得分:1)
答案 2 :(得分:1)
另一种选择,
$random_keys=array_rand($member,count($member));
echo $member[$random_keys[0]];
echo $member[$random_keys[1]];
echo $member[$random_keys[2]];
echo $member[$random_keys[3]];
echo $member[$random_keys[4]];