davidgorges/php-biased-random

dev-master 2014-07-12 01:35 UTC

This package is auto-updated.

Last update: 2020-01-06 03:39:29 UTC


README

基于概率获取随机元素

如何使用

$randomizer = new Randomizer();
$randomizer->add( new Element('Banana', 70))
           ->add( new Element('Apple',  30));

$randomFruit = $randomizer->get(); // Chance of Banana is 70%

计算概率

在某些情况下,你想要添加多个项目并检索某个项目的概率。

$randomizer = new Randomizer();
$randomizer->add( new Element('Banana', 2))
           ->add( new Element('Apple',  1))
           ->add( new Element('Banana', 2));

$probability = $randomizer->getProbabilityFor('Banana');
echo $probability; // outputs 0.8

简写方法

你不需要创建元素包装对象。你只需将你的元素添加到Randomizer中

$randomizer = new Randomizer();
$randomizer->add('banana')->add('apple');

// with weight
$randomizer->add('banana', 10)->add('apple', 5);

注意:如果你添加了多个相同的项目,它们将合并成一个元素,并调整权重。