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

  • 2020年12月8日
  • 2024年2月29日
  • PHP

 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 を使っていくことになりそうです。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG