php 如何随机生成指定数字和概率?

发布网友

我来回答

1个回答

热心网友

亲,你可以这样做呦!~~

如果只有这三个数,是不好弄出 0:85%  1:5%  2:10%的

但是你如果想提高某个数字出现的概率,你可以适当让这个数组增多。

你可以这样写:

<?php


// 定义一个数组,里面有85个0
$num0 = array_fill(0, 85, 0); 
// 定义一个数组,里面有5个1
$num1 = array_fill(1, 5, 1); 
// 定义一个数组,里面有10个2
$num2 = array_fill(2, 10, 2); 
// 总数组,里面总共100个元素
$allNum = array_merge($num0, $num1, $num2);
// 随机取一个元素
$randKey = array_rand($allNum);
$randnum = $allNum[$randKey];

// 以上就可以实现出现0的概率是85% 出现1的概率是5% 出现2的概率是10%了,因为一共一百个数,里面有85个是0, 5个是1, 10个是2

希望可以帮到你呦!~如果有不正确的地方,欢迎指正!~~

本人博客:https://www.boboidea.com ,欢迎交流学习!~~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com