我有3个不同值的数组。
我从每个数组中选择一个随机值,然后将该值添加到另一个数组中。
由于某种原因,每次都会添加第一个数组的值!
$targets = 3;
$singles = array('1', '2', '3', '4');
$doubles = array('Double 1', 'Double 2', 'Double 3', 'Double 4');
$trebles = array('Treble 1', 'Treble 2', 'Treble 3', 'Treble 4');
$tasks = array('Any Red', 'Any Green', 'Any Treble', 'Any Double');
$game_card = array();
for($i=0; $i < $targets; $i++)
{
$single_number = array_rand($singles);
$game_card[] = $single_number;
$double_number = array_rand($doubles);
$game_card[] = $double_number;
$treble_number = array_rand($trebles);
$game_card[] = $treble_number;
}
答案 0 :(得分:0)
array_rand()返回KEY而不是VALUE。而这里的关键只是索引,它恰好是一个整数,看起来像第一个数组的值。
所以你想要的是:
$single_number = array_rand($singles);
$game_card[] = $singles[$single_number];
$double_number = array_rand($doubles);
$game_card[] = $doubles[$double_number];
....