我如何从数组中随机获取一些信息,例如,我有一个数组,我想随机地获取其中的一行,如何使用PHP实现呢?
$quizes = array(
'3-1' => '2',
'4+4' => '8',
'7-5' => '2',
'4+2' => '6',
'9-3' => '6',
'1+2' => '3',
'9+9' => '18',
'3+2' => '5',
'2*3' => '6',
'5*3' => '15',
'6+6' => '12',
'3+4' => '7',
'7-4' => '3',
'6+2' => '8',
'3*2' => '6',
'7+6' => '13',
'1+1' => '2',
'4*4' => '16',
'10-3' => '7'
);
我已经尝试过的
$rand_keys = array_rand($quizes, 2);
echo $quizes[$rand_keys[0]] . "\n";
echo $quizes[$rand_keys[1]] . "\n";
但这只返回结果,如2 7,15 2,3 2和更多。
请帮忙谢谢
发布于 2017-06-05 21:50:54
好吧,你得到的正是你想要的--价值属于随机选择的钥匙。要使key => value
对执行:
echo $rand_keys[0] . " => " . $quizes[$rand_keys[0]] . "\n";
当然,您可以格式化输出,不管您想要什么。
发布于 2017-06-05 21:50:41
您可以将数组顺序随机化,并接受第一个元素。代码将如下所示:
shuffle($quizes);
发布于 2017-06-05 22:04:38
代码中的每个“行”实际上是两个部分:一个键及其相应的值。例如,在第一行中,'3-1'
是键,'2'
是它的值。=>
运算符指示这种关系。
您使用的array_rand
函数将从数组中返回一个随机键(如果指定第二个参数,则返回一组密钥)。
$key = array_rand($quizes); // returns a random key e.g. '3-1'
然后你可以用这个键得到相应的值,
$value = $quizes[$key]; // returns the value that matches $key
从那一点开始,有多种方法输出它们。如果您希望它在代码中看起来有点像它,您可以使用
echo "$key => $value";
https://stackoverflow.com/questions/44378166
复制相似问题