首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP -如何从数组中随机获取

PHP -如何从数组中随机获取
EN

Stack Overflow用户
提问于 2017-06-05 21:43:41
回答 3查看 17关注 0票数 0

我如何从数组中随机获取一些信息,例如,我有一个数组,我想随机地获取其中的一行,如何使用PHP实现呢?

代码语言:javascript
运行
复制
 $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'
    );

我已经尝试过的

代码语言:javascript
运行
复制
$rand_keys = array_rand($quizes, 2);
echo $quizes[$rand_keys[0]] . "\n";
echo $quizes[$rand_keys[1]] . "\n";

但这只返回结果,如2 7,15 2,3 2和更多。

请帮忙谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-06-05 21:50:54

好吧,你得到的正是你想要的--价值属于随机选择的钥匙。要使key => value对执行:

代码语言:javascript
运行
复制
echo $rand_keys[0] . " => " . $quizes[$rand_keys[0]] . "\n";

当然,您可以格式化输出,不管您想要什么。

票数 0
EN

Stack Overflow用户

发布于 2017-06-05 21:50:41

您可以将数组顺序随机化,并接受第一个元素。代码将如下所示:

代码语言:javascript
运行
复制
shuffle($quizes);
票数 1
EN

Stack Overflow用户

发布于 2017-06-05 22:04:38

代码中的每个“行”实际上是两个部分:一个键及其相应的值。例如,在第一行中,'3-1'是键,'2'是它的值。=>运算符指示这种关系。

您使用的array_rand函数将从数组中返回一个随机键(如果指定第二个参数,则返回一组密钥)。

代码语言:javascript
运行
复制
$key = array_rand($quizes);    // returns a random key e.g. '3-1'

然后你可以用这个键得到相应的值,

代码语言:javascript
运行
复制
$value = $quizes[$key];        // returns the value that matches $key

从那一点开始,有多种方法输出它们。如果您希望它在代码中看起来有点像它,您可以使用

代码语言:javascript
运行
复制
echo "$key => $value";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44378166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档