wordpressvn / faker
Faker 是一个 PHP 库,可以为您生成虚假数据。
Requires
- php: ^7.4 || ^8.0
- psr/container: ^1.0 || ^2.0
- symfony/deprecation-contracts: ^2.2 || ^3.0
Requires (Dev)
- ext-intl: *
- bamarni/composer-bin-plugin: ^1.4.1
- phpunit/phpunit: ^9.5.26
- symfony/phpunit-bridge: ^5.4.16
Suggests
- ext-curl: Required by Faker\Provider\Image to download images.
- ext-dom: Required by Faker\Provider\HtmlLorem for generating random HTML.
- ext-iconv: Required by Faker\Provider\ru_RU\Text::realText() for generating real Russian text.
- ext-mbstring: Required for multibyte Unicode string functionality.
Conflicts
This package is auto-updated.
Last update: 2024-09-21 02:56:06 UTC
README
Faker
Faker 是一个 PHP 库,可以为您生成虚假数据。无论您需要启动数据库、创建漂亮的 XML 文档、填充持久层进行压力测试,还是匿名化从生产服务中获取的数据,Faker 都适用于您。
它深受 Perl 的 Data::Faker 和 Ruby 的 Faker 启发。
入门指南
安装
Faker 需要 PHP >= 7.4。修复越南语
composer require wordpressvn/faker
文档
完整文档可以在 fakerphp.github.io 上找到。
基本用法
使用 Faker\Factory::create()
创建并初始化一个 Faker 生成器,可以通过访问以您希望的数据类型命名的方法来生成数据。
<?php declare(strict_types=1); require_once 'vendor/autoload.php'; // use the factory to create a Faker\Generator instance $faker = Faker\Factory::create(); // generate data by calling methods echo $faker->name(); // 'Vince Sporer' echo $faker->email(); // 'walter.sophia@hotmail.com' echo $faker->text(); // 'Numquam ut mollitia at consequuntur inventore dolorem.'
每次调用 $faker->name()
都会产生不同的(随机)结果。这是因为 Faker 使用了 __call()
魔法,并将 Faker\Generator->$method()
调用转发到 Faker\Generator->format($method, $attributes)
。
<?php declare(strict_types=1); for ($i = 0; $i < 3; $i++) { echo $faker->name() . "\n"; } // 'Cyrus Boyle' // 'Alena Cummerata' // 'Orlo Bergstrom'
自动重构
如果您已经使用过这个库并使用其属性,它们现在是过时的,需要用它们等效的方法替换。
您可以使用提供的 Rector 配置文件来自动化工作。
运行
composer require --dev rector/rector
安装 rector/rector
。
运行
vendor/bin/rector process src/ --config vendor/fakerphp/faker/rector-migrate.php
运行 rector/rector
。
注意:不要忘记将 src/
替换为您源目录的路径。
或者,将配置导入您的 rector.php
文件
<?php declare(strict_types=1); use Rector\Config; return static function (Config\RectorConfig $rectorConfig): void { $rectorConfig->import('vendor/fakerphp/faker/rector-migrate.php'); };
许可
Faker 在 MIT 许可证下发布。有关详细信息,请参阅 LICENSE
。
PHP 版本支持策略
此包的维护者在其初始发布后添加对 PHP 版本的支持,并在一年后停止对该 PHP 版本的支持。
向后兼容承诺
Faker 使用 Semver。这意味着版本带有 MAJOR.MINOR.PATCH 标签。只有新的主要版本才允许破坏向后兼容性(BC)。
标记为 @experimental
或 @internal
的类不包括在我们的向后兼容承诺中。您也无法保证方法返回的值始终相同。您可以保证数据类型不会更改。
PHP 8 引入了 命名参数,这增加了包维护者的成本并降低了灵活性。Faker 中方法参数的名称不包括在我们的 BC 承诺中。