intellex/generator

v1.0.1 2020-05-05 16:29 UTC

This package is auto-updated.

Last update: 2024-09-06 01:56:03 UTC


README

示例和下面的支持的生成器完整列表

图片
  • 来自Pixabay服务的图片URL生成器(需要免费API密钥)。
核心
  • 布尔生成器,具有选择性的真值机会。
  • 在范围内获取一个数字,具有或没有<强>高斯分布
  • 从<强>加权数组中随机获取一个项目,允许您操作机会。
  • 从一段时间内随机获取<强>日期时间,在<强>任何格式
文本和HTML
  • 从自定义或预定义的字符池中生成随机字符串。
  • <强>Lorem ipsum文本生成器,支持:单个单词,<强>可变长度句子,完整段落和完整文章。
  • 完整的HTML生成器,用于生成<强>装饰句子,段落或包含图片的完整文章(需要免费的Pixabay API密钥)。
附加功能
  • 生成一个<强>GPS坐标,即从您选择的任何中心点最多不超过米。
  • 一个硬编码的生成器,每次都返回相同的结果,只是为了保险起见 :)。

示例

<强>提示:克隆后,将浏览器指向tests/index.php以查看所有可能的结果。

图片

echo '<img src="' . (new PixabayImageURLGen($pixabayAPIKey, [ 'q' => 'kitten' ], PixabayImageURLGen::SIZE_960))->gen() . '" />';

距离荷兰阿姆斯特丹市中心3000米内的GPS位置

(new \Intellex\Generator\Plus\GpsLocationGen(52.3677607, 4.8785829, 3000));

50%机会为真的布尔值

(new BooleanGen())->gen();

80%机会为真的布尔值

(new BooleanGen(0.8))->gen();

50 - 250范围内的随机数字

(new NumericGen(50, 250))->gen();

均值为38和均值为5的随机数字(高斯分布)

(new GaussianDistributionGen(38, 4))->gen();

从数组中随机获取一个项目

(new ItemGen([ 1, 2, 3, 5, 7, 11 ]))->gen();

从数组中随机获取加权项目,其中A是B的两倍,是C的六倍更可能。

(new WeightedItemGen([ 'A' => 6, 'B' => 3, 'C' => 1 ]))->gen();

包含图片的完整HTML文章

(new HTMLArticleGen(true, $pixabayAPIKey))->gen();

所有生成器列表

核心

  • <强>BooleanGen生成布尔值,具有给任何结果更多机会的能力。
  • <强>NumericGen在指定范围内生成随机数字。
  • <强>GaussianDistributionGen使用正态分布来从范围内选择一个随机值。
  • <强>HardcodedGen使用构造函数中提供的值作为生成的值,每次都这样做。
  • <强>ItemGen从池中选取一个项目,其中每个项目被选中的机会相同。
  • <强>WeightedItemGen从池中随机选取一个项目,具有影响每个项目选择机会的能力。

附加功能

  • <强>GpsLocationGen生成GPS位置,在给定半径内,给定中心点的输出格式为,,,最多6位十进制精度。
  • <强>PixabayImageURLGen使用他们的API生成指向Pixabay免费图片服务的随机图片的URL。

时间

  • <强>TimestampGen在给定范围内生成随机时间戳。
  • <强>DateTimeGen以YYYY-MM-DD hh:mm:ss格式生成随机日期。
  • <强>DateGen以YYYY-MM-DD格式生成随机日期。
  • <强>TimeGen以24小时格式生成时间。

字符串和文本

  • <强>StringGen生成随机字符串。
  • <强>WordGen从预定义的“lorem ipsum”字典中生成单个单词。
  • <强>SentenceGenerator生成一个虚拟句子。
  • <强>ParagraphGen从随机句子中生成随机段落。
  • <强>ArticleGen从随机段落中生成随机文章。

HTML

  • <强>HTMLSentenceGen生成带有随机HTML标签的随机句子,如b、strong、em等...
  • <强>HTMLParagraphGen生成有效的HTML段落。
  • <强>HTMLSectionGen生成带有随机段落的HTML标题。
  • HTMLArticleGen 生成完整的HTML文章。

待办事项

  1. 结果测试。
  2. WeightedItemGen的实现更加完善。
  3. 为所有生成器的所有构造函数参数设置setter。
  4. 新增生成器。

许可协议

MIT许可协议

版权所有(c)2019 Intellex

在此特此许可,任何人免费获得本软件及其相关文档副本(以下简称“软件”),可以在不受限制的情况下处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供方授予此类权利的人这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何形式的质量保证,无论是明示的还是暗示的,包括但不限于适销性、适用于特定目的和非侵权的保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他原因,源于、涉及或与软件或软件的使用或其他处理有关。

致谢

脚本由Intellex团队编写。