从字符串索引关联数组PHP中检索随机内容

时间:2013-09-18 02:09:13

标签: php arrays string random associative-array

我正在尝试从字符串索引关联数组中检索随机数组。代码如下,我一直遇到错误:

$suite['heart']=1;
$suite['heart']=2;
$suite['heart']=3;
$suite['heart']=4;
$suite['heart']=5;

$rand = array_rand($suite);
$card1 = $suite[$rand];

print $card1;

我的结果是静态的并且连续显示数字5,我希望它显示任意随机数。

提前谢谢!

1 个答案:

答案 0 :(得分:1)

这是因为$suite['heart']包含的所有内容都是5

您宣布$suite['heart'] = 1; 然后重新声明$suite['heart'] = 2;等。

我认为你在数组中寻找的东西更像是

$suite['heart'] = array(1, 2, 3, 4, 5);

另请注意,$rand = array_rand($suite);只能检索$suite的直接子项(如果您没有定义任何其他项,则始终为$suite['heart']) - 您还必须随机选择从子数组中获取随机数和数字的值。

以下内容应该有效:

$suite['heart'] = array(1, 2, 3, 4, 5);
$suite['spade'] = array(1, 2, 3, 4, 5);

$suit = array_rand($suite);
$card = array_rand($suite[$suit]);
$card1 = $suite[$suit][$card];

print $card1;