madeitbelgium/spintax

根据单一文本生成多个文章。

1.4.0 2022-07-19 11:29 UTC

This package is auto-updated.

Last update: 2024-09-19 16:19:39 UTC


README

Build Status Coverage Status Latest Stable Version Latest Unstable Version Total Downloads License

使用此(Laravel)包,您可以根据单一文本创建多个文章。这是基于 https://github.com/chilloutdevelopment/ChillDevSpintax 的分支和扩展版本

安装

在您的 composer.json 中要求此包,并更新 composer。

"madeitbelgium/spintax": "~1.0"

文档

使用方法

获取随机旋转

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

Spintax::parse('Your {text|content} here.')->generate();
use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

$spintax = Spintax::parse('Schrödinger’s Cat is {dead|alive}.');
$string = $spintax->generate();

获取所有可能的旋转

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

Spintax::parse('Your {text|content} here.')->getAll();
use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

$spintax = Spintax::parse('Schrödinger’s Cat is {dead|alive}.');
$strings = $spintax->getAll();

其他示例

但在我们的库中还有更多。首先,支持嵌套结构

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

$spintax = Spintax::parse('I {love {PHP|Java|C|C++|JavaScript|Python}|hate Ruby}.');
$string = $spintax->generate();

尚未完成!使用我们出色的库,您可以检测生成给定变体的路径,并在以后重新使用它

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

$path = [];

$spintax = Spintax::parse('I {love {PHP|Java|C|C++|JavaScript|Python}|hate Ruby}.');
// since $path is empty, random values will be used for missing indices and $path will be filled with them
$string = $spintax->generate($path);

// from now you can use $path to re-create the same combination
// all these calls will keep returning same string value
$spintax->generate($path);
$spintax->generate($path);
$spintax->generate($path);
$spintax->generate($path);

// this will force generating "I love Java."
$path = [0, 1];
$spintax->generate($path);

路径从 0 开始计数,每个条目是下一步。

您还可以使用部分路径来定义仅起始路径,所有缺失的部分将随机选择

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

$path = [0];

$spintax = Spintax::parse('I {love {PHP|Java|C|C++|JavaScript|Python}|hate Ruby}.');
// this will generate one of "I love {}." variants
$string = $spintax->generate($path);

为此,有一个快捷方法 Parser::replicate()(您可以在快捷方法中作为第二个参数使用以逗号分隔的数字字符串)

use MadeITBelgium\Spintax\SpintaxFacade as Spintax;

echo Spintax::replicate('I {love {PHP|Java|C|C++|JavaScript|Python}|hate Ruby}.', '0,0');

完整文档可以在: http://www.madeit.be/ 找到

支持

支持github或邮件: tjebbe.lievens@madeit.be

贡献

请尽量遵循 psr-2 编码风格指南。 http://www.php-fig.org/psr/psr-2/

许可证

此包受 LGPL 许可证许可。您可以在个人和商业项目中自由使用它。代码可以被分支和修改,但原始版权作者应始终被包含在内!