PHP随机显示变量

时间:2012-01-02 20:34:38

标签: php

我有一个名为

的变量
  $core

我还有另外3个名为

的变量
 $one, $two, $three

我需要(很多次)显示这些的随机组合,其中总是包含$ core,其中3个其他变量中的一个包括在之前或之后:

例如:

 $two $core
 $core $one
 $three $core
 $core $two

我不确定如何使用PHP进行随机性处理? 推动正确的方向将非常受欢迎。

THX

3 个答案:

答案 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,则从较短的数组中再次随机选择。