端くれプログラマの備忘録 PHP [PHP] Faker – テストに役立つフェイクなデータを生成するライブラリ

[PHP] Faker – テストに役立つフェイクなデータを生成するライブラリ

フェイクデータを生成するPHPライブラリ。PHP 5.3.3以降。

fzaninotto/Faker · GitHub
https://github.com/fzaninotto/Faker

インストール

composer require fzaninotto/faker

サンプル

require_once '/path/to/Faker/src/autoload.php';
$faker = Faker\Factory::create();

echo $faker->name;
// Lucy Cechtelar
echo $faker->address;
// 426 Jordy Lodge
// Cartwrightshire, SC 88120-6700
echo $faker->text;
// Dolores sit sint laboriosam dolorem culpa et autem. Beatae nam sunt fugit
// et sit et mollitia sed.
// Fuga deserunt tempora facere magni omnis. Omnis quia temporibus laudantium
// sit minima sint.

アクセサが値を更新するので、下のようにプロパティにアクセスするたびに異なる内容が得られる。

for ($i=0; $i < 10; $i++) {
    echo $faker->name, "\n";
}

createの引数にja_JPを指定すると日本語のデータが得られる。だけど、プロパティが呼ばれるたびに内容が変わってしまうので、1つの名前を漢字、カナ姓名、カナ姓、カナ名と異なる書式で取得することはできなさそう。

$faker = Faker\Factory::create('ja_JP');

echo $faker->name;
// 小林 裕樹
echo $faker->kanaName;
// スズキ マアヤ
echo $faker->firstKanaName;
// アキラ
echo $faker->lastKanaName;
// キジマ