【发布时间】:2014-02-07 20:32:53
【问题描述】:
我在抽奖类型脚本中使用随机 PHP 数组,有时我会得到相同的字符串 3 次或更多次。如何将随机数限制为最多显示 2 个相同的字符串?
例如我有:
<?php
$raffle = array('string1', 'string2', 'string3', 'string4', 'string5', 'string6');
echo $raffle[array_rand($raffle)] . ", " . $raffle[array_rand($raffle)] . ", " . $raffle[array_rand($raffle)] . ", " . $raffle[array_rand($raffle)];
?>
所以它从数组中随机选择 4 个字符串,但我不希望同一个字符串出现两次以上。我怎样才能做到这一点?
【问题讨论】:
-
但是同一个出现两次可以吗?不是三遍吗?对吗?
-
使用
while循环并仅在值显示 2 次或更少时停止它 -
@DamienBlack,是的,两次是可以的,但不是更多。
-
@RazHarush,while 循环可以正常工作,但是如果显示两次,我该如何让它停止该值