我有一个名为
的变量 $core
我还有另外3个名为
的变量 $one, $two, $three
我需要(很多次)显示这些的随机组合,其中总是包含$ core,其中3个其他变量中的一个包括在之前或之后:
例如:
$two $core
$core $one
$three $core
$core $two
我不确定如何使用PHP进行随机性处理? 推动正确的方向将非常受欢迎。
THX
答案 0 :(得分:4)
不要使用个别变量。使用数组:
$vals = array($one, $two, $three);
构建一个临时数组:
$new = array($core, $vals[array_rand($vals, 1)]);
然后将其洗牌:
shuffle($new);
答案 1 :(得分:1)
将三个变量保存在一个数组中。然后在0和1之间调用rand()
以确定是否应首先打印数组值或$core
。同时,从数组中调用一个随机值
// Array of the three vars
$arr = ($one, $two, $three);
// If 0 is chosen, print an array value then $core.
// Otherwise print $core than an array value
echo rand(0, 1) == 0 ? $arr[rand(0,2)] . " " . $core : $core . " " . $arr[rand(0,2)];
答案 2 :(得分:0)
也许将所有4个值存储在数组中。随机选择一个项目。去掉它。如果值不是$core
,则从较短的数组中再次随机选择。