不应从array_rand中选择所选值

时间:2010-08-31 20:09:09

标签: php arrays

在php代码下面,我选择了“Neo”,所以Neo不应该选择随机选择。还应打印另外2个值。

  <?php
    $input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
    $rand_keys = array_rand($input, 2);
    echo $input[$rand_keys[0]] . "\n";
    echo $input[$rand_keys[1]] . "\n";
    ?>

我的数组是Multi-dimentionnal数组,这里是样本

array(1) { ["data"]=>  array(301) { [0]=>  array(2) { ["name"]=>  string(10) "Some Name" ["id"]=>  string(9) "5000213929" }

1 个答案:

答案 0 :(得分:1)

你怎么知道“被选中”了什么?它是变量吗?您需要知道这是为了使用array_search

取消设置数组的值
unset($input[array_search('Neo', $input)]);
$rand_keys = array_rand($input, 2);

哪个应该取消Neo,因此不能在随机化中使用它。可能有更好的方法来做到这一点,但这是一种方法。当然,如果你确实有办法确定是否选择了Neo,你可以使用该变量代替'Neo'。