【问题标题】:how to use biasedNumberBetween faker? [closed]如何使用biasedNumberBetween faker? [关闭]
【发布时间】:2015-12-04 18:24:58
【问题描述】:

我试图得到一个介于 1 到 6 之间的数字,并且有更多机会接近 1。

我试过这个:

<li>{{Faker\Factory::create()->biasedNumberBetween($min = 10, $max = 20, $function = 'unbiased')}}</li>

我要做的是生成一个从 1 到 6 rand(1,6); 的数字,但使数字更接近 1,因为较低的数字将比其他数字具有更大的权重。

【问题讨论】:

    标签: php faker


    【解决方案1】:

    这样的?

    <?php
    function weightedRand($min, $max, $weightedMax) {
    $arr = array();
    for($i = 0; $i < 10; $i++) {
        $arr[] = rand($min, $weightedMax);
    }
    $arr[] = rand($min, $max);
    return $arr[rand(0,10)];
    }
    
    echo weightedRand(1,6, 3);
    ?>
    

    现在低于 4 的数字比高于 4 的数字更有可能 :)

    【讨论】:

    • 我使用了这个代码:$faker = Faker\Factory::create(); $faker->biasedNumberBetween($min = 1, $max = 6, $function = 'Faker\Provider\Biased::linearLow');
    猜你喜欢
    • 2016-12-05
    • 1970-01-01
    • 2018-09-10
    • 2012-10-24
    • 2023-03-03
    • 2020-06-13
    • 2018-10-23
    • 2019-10-25
    • 1970-01-01
    相关资源
    最近更新 更多