LaravelでUUIDを使う方法【現役エンジニアが解説】

PROGRAM

今回は、LaravelでUUIDを使う方法について、簡単に解説していきます。

パッケージインストール

LaravelではUUIDを簡単に生成できます。

まず、laravel-eloquent-uuidパッケージをインストールします。

composer require goldspecdigital/laravel-eloquent-uuid:^9.0

composerコマンドを使うことでインストールできますが、バージョンはLaravelのバージョンによって適宜変更してください。

マイグレーション(テーブル作成)

続いて、マイグレーションでuuidのカラムを定義します。

生成したUUIDはほぼデータベースに保存すると思いますので、その想定です。

Schema::create('hoges', function (Blueprint $table) {
    // ...
    $table->uuid('uuid')->unique();
    // ...
}

上記のように、対象のカラムにuuidメソッドを使い、引数でカラム名を指定します。

UUID生成(レコード登録時)

準備が整えば、レコード登録時にUUIDを生成するだけです。

Str::uuid()

上記のようにStrファサードのuuidメソッドでランダムにUUIDを生成できます。

ただし、100%ユニークなUUIDを生成できる保証はないため、レコード登録時にUUIDが理由で失敗することが完全にないわけではありません。