首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP中包含数组的随机数

PHP中包含数组的随机数
EN

Stack Overflow用户
提问于 2012-01-14 02:40:49
回答 4查看 174关注 0票数 0

我想为数组实现一个随机数,让我们看看我是否清楚了这一点:

我有过

代码语言:javascript
复制
$array[0] = 'Hello';
$array[1] = 'Good Morning';
$array[2] = 'Good Afternoon';
$array[3] = 'Good Night';
$array[4] = 'Bye';

我这样做是因为这是我老板想要的方式,而不是数组(1=>‘Hello’,等等)。不管怎样,我想要的是用函数$arrayrandom (‘0’,'99')在数组中生成一个随机数。

也许可以这样做:

代码语言:javascript
复制
$rand1 = rand('0','99');
$array['$rand1'] = 'Hello';

这行得通吗?谁有更好的主意,或者请帮我找到一个解决方案?

谢谢

EN

回答 4

Stack Overflow用户

发布于 2012-01-14 02:45:52

这会起作用吗?

不是的。随机!=唯一。如果多次产生相同的数字,您将覆盖现有的数组元素。

您还没有说明为什么要这样做,但是如果您要为数组寻找一个随机顺序,您可以使用shuffle

如果需要从数组中抓取随机元素,可以使用array_rand

票数 3
EN

Stack Overflow用户

发布于 2012-01-14 02:54:10

我认为你想要做的事情可以简化为:

代码语言:javascript
复制
// this is the same as creating an array: $array[0] = 'Hello'; $array[1] = 'Good Morning';
$array = array('Hello', 'Good Morning', ...etc...);

// array_rand will give you a random "key" from the array
echo $array[array_rand($array, 1)];

一些资源将有助于剖析这一点:array_rand()PHP's page on arrays

票数 1
EN

Stack Overflow用户

发布于 2012-01-14 02:47:34

您可以使用array_rand..假设您使用数组的长度作为最大值(并且您知道最小值),那么您的技术将以类似的方式工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8855511

复制
相关文章

相似问题

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