来自数组的随机值在PHP中

前端之家收集整理的这篇文章主要介绍了来自数组的随机值在PHP中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我明白这个问题可能已经被问到了,但我不明白先前的问题,足以知道他们是否做我想要的.
$fruits = array('20' => 'apple','40' => 'orange','40' => 'pear');

钥匙是获得价值的机会的百分比.我想要mt_rand()一个介于0和99之间的数字,并根据这些百分比从$fruits返回一个值.

这很可能我很困惑,因为我不知道如何解释我正在寻找什么.

提前感谢您的帮助.

编辑:根据这些机会,从$fruits中获取一个随机值:

我想要40%的机会获得橙色,40%的机会获得一个梨,并有80%的机会获得一个苹果.

编辑:为了进一步澄清,由于很多答案都错了(或者我只是不明白他们的代码),我需要一个结果,不管我选哪个号码,不只是20,40或40.

我认为这样做会做你想要的: sample(点击提交按钮多次在样本上获得代码重新执行)
$fruits = array('apple' => '20','orange' => '40','pear' => '40');

$newFruits = array();
foreach ($fruits as $fruit=>$value)
{
    $newFruits = array_merge($newFruits,array_fill(0,$value,$fruit));
}

$myFruit = $newFruits[array_rand($newFruits)];

这将创建一个数组($newFruits),它是一个具有100个元素的数字索引数组.其中20个是“苹果”,40个是“橙”,40个是“梨”.然后我们从该数组中选择一个随机索引. 100次中有20次将获得“苹果”,100次中40次将获得“橙色”,100次中40次将获得“梨”.

原文链接:https://www.f2er.com/php/131433.html

猜你在找的PHP相关文章