lortabac / alea
此包的最新版本(dev-master)没有可用的许可信息。
从加权列表中随机选择
dev-master
2013-09-08 14:17 UTC
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-09-24 05:40:23 UTC
README
#Alea
一个用于从加权列表中随机选择元素的微型库。
安装
使用 composer
如果您使用 composer,只需将 lortabac/alea 添加到您的 composer.json 文件中。
{
"require": {
"lortabac/alea": "dev-master"
}
}
手动安装
-
将
src目录中的文件复制到您的项目中。 -
包含您需要的类(
WeightedList.php或Dice.php)。
使用方法
加权列表
在加权列表模式下,每个元素被分配一个相对权重。
$criteria = [ ['foo', 50], ['bar', 30], ['baz', 20] ]; $weightedList = new Alea\WeightedList($criteria); $element = $weightedList->getItem();
骰子
在骰子模式下,每个元素都有特定的范围。只指定上限。第一个范围始终从 1 开始。
$criteria = [ ['foo', 6], // from 1 to 6 ['bar', 8], // 7 and 8 ['baz', 12] // from 9 to 12 ]; $dice = new Alea\Dice($criteria); $element = $dice->getItem();
您可以可选地包含骰子滚动。在这种情况下,结果以关联数组的形式给出。
$itemData = $dice->getItem(Alea\Dice::INCLUDE_ROLL); print_r($itemData); /* Array ( [roll] => 8 [item] => bar ) */
许可
(MIT 许可证)
版权所有 (C) 2013 Lorenzo Tabacchini
特此授予任何获得此软件及其相关文档副本(“软件”)的人免费使用该软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许向获得软件的人提供软件副本以供其使用,但须遵守以下条件
上述版权声明和本许可声明应包含在软件的任何副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和无侵权性保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他原因,源于、因之或与此软件或其使用或其他交易有关。