浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【PHP】ランダムデータ生成用ライブラリ fzaninotto/Faker の後継の FakerPHP/Faker の紹介

 fzaninotto/faker は PHP のランダムデータ生成用ライブラリです。
fzaninotto/Faker: Faker is a PHP library that generates fake data for you
 長らく好まれていましたが、管理者の環境の変化や、数が多く多言語で著作権的にも怪しいテストデータのプルリクの対応に疲れたりなんだりで archived されました。
Sunsetting PHP Faker
 Faker に対して信頼できない値を入力することは、テストデータの埋め込みで外部サービスを使いでもしない限りできないため、安全が担保されています。このため既存の fzaninotto/Faker を使い続けることはできますが PHP 自体のバージョンアップなどを考えると(とりあえず PHP 9 の時代になると composer の要求実行環境関連で確実にこけます。PHP 8対応もしていないのでどこかしら怪しいことが起きそうです)使い続けることはそれほど好ましくありません。代わりに新たにプロジェクトを引き継いだ FakerPHP/Faker を使うのが良いです。

FakerPHP/Faker: Faker is a PHP library that generates fake data for youFakerPHP / Faker

 FakerPHP/Faker は fzaninotto/Faker からフォークされ、Laravel の開発者の大本である Taylor 氏がここでメンテを続けると宣言した新しい Faker です。

 使い方はこれまで通りで、特別 Laravel を絡める必要もありません。

<?php
require_once 'vendor/autoload.php';

// Faker\Generator のインスタンスを factory 機能から生成
$faker = Faker\Factory::create();
// プロパティとしてランダムデータを生成してアクセス
echo $faker->name;
echo $faker->address;
echo $faker->text;
<?php
for ($i = 0; $i < 10; $i++) {
    echo $faker->name, "\n";
}
// アクセスするたびに別のランダムな値が返ってきます
// Adaline Reichel
// Dr. Santa Prosacco DVM
// Noemy Vandervort V
// Lexi O'Conner
// Gracie Weber
// Roscoe Johns
// Emmett Lebsack
// Keegan Thiel
// Wellington Koelpin II
// Ms. Karley Kiehn V

 今後のプロジェクトでテストデータの生成などランダムデータが欲しい時は FakerPHP/Faker を使っていくことになりそうです。

  • この記事いいね! (1)