gpt4 book ai didi

php - 在 Nelmio Alice 中使用没有标准教义装置的自定义伪造数据提供者

转载 作者:搜寻专家 更新时间:2023-10-31 21:31:00 25 4
gpt4 key购买 nike

我正在设置 NelmioAliceFaker通过 AlixeFixturesBundle 在 Symfony2 项目中.我需要一个 组合 装置,例如:

representative{1..100}:
veeva_rep_id (unique): qlv_005800000067SwzAAE

这是一个 qlv_ 前缀,后跟一个随机的 18 个字符的字符串。我发现完成这项工作的最佳方法(如果有人知道另一种方法或更好的方法让我知道)是使用自定义伪造者,我编写了这段代码:

<?php
/**
* FakerProvider: VeevaProvider.
*/

namespace PDI\PDOneBundle\DataFixtures;

use ReverseRegex\Lexer;
use ReverseRegex\Random\SimpleRandom;
use ReverseRegex\Parser;
use ReverseRegex\Generator\Scope;

class VeevaProvider extends \Faker\Provider\Base
{
public function veevaRepId()
{
$lexer = new Lexer('[a-zA-Z0-9]{18}');
$gen = new SimpleRandom(10007);
$result = '';

$parser = new Parser($lexer, new Scope(), new Scope());
$parser->parse()->getResult()->generate($result, $gen);

return 'qlv_' . $result;
}
}

如解释here在 Faker 文档中。现在,here在 NelmioAlice 上,作者解释了如何添加Custom Faker Data Providers,但它使用了 Doctrine Fixtures,而我没有这样做,有了这个,我如何加载和使用我在 fixtures 上编写的提供程序?对此有什么建议吗?

最佳答案

它应该像在构造它时将提供程序的实例传递到 Loader 一样简单:

$loader = new Loader('en_US', [new VeeveProvider]);

关于php - 在 Nelmio Alice 中使用没有标准教义装置的自定义伪造数据提供者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30115354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com