勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPで「ramsey/uuid」ライブラリを用いてUUIDを生成する方法

  PHP

PHPでUUID(Universally Unique Identifier)を生成したい。調べたところ「ramsey/uuid」ライブラリを使用することで簡単に生成できる模様。以下にライブラリ導入方法及びUUIDを生成するソースコードをメモ。

 

ramsey/uuid

公式サイト

https://github.com/ramsey/uuid

リファレンス

https://uuid.ramsey.dev/en/stable/

 

インストール

サーバにSSH接続し以下コマンドでインストールする。

composer require ramsey/uuid

 

UUIDの生成

ソースコード

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

use Ramsey\Uuid\Uuid;

$uuid = Uuid::uuid4();

var_dump($uuid->toString()); //b84dcc87-a0b9-4e21-a001-50a1ecd49ffc

UUIDのバージョンについて

上記ソースコードではバージョン4を指定しているが、公式サイトによると1~7まで指定できる模様。

 

UUIDについて

UUIDとは

「Universally Unique Identifier」の略で世界中で重複しない(ことになっている)IDのこと。極めて低い確率ではあるが重複することもあるらしい。

フォーマットが決まっている

「XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX」な形で「8桁-4桁-4桁-4桁-12桁の文字列」になる。

 

その他

使いどころ

ページIDを推測されたくない場合等に使える。具体的には「https://test.com/user/【ユーザID】」みたいなユーザーページを作った場合に、ユーザID部分をデータベースのオートインクリメント値にしたくない場合等。

 - PHP

  関連記事

PHPでGoogle翻訳を手軽に扱えるライブラリ「google-translate-php」の利用方法

サイト内で一部テキストのGoogle翻訳を行いたい。ただ、Google Clou ...

PHPで配列を確認する際にvar_dumpよりも見やすくなるdBug.phpの利用方法

PHPで配列を確認する際、大抵var_dumpで出力させているがこれが見づらい。 ...

PHPで画像アップロード、リサイズ、形式変換(jpg->webp等)はclass.upload.phpが便利

今までPHPで画像関連の処理を行う場合、リサイズの時のみsmart_resize ...

PHPで住所や名前のテキストをランダム生成するライブラリFakerPHPの使い方

PHPでランダムなデータを生成したい際に値段や点数等の数値やパスワード等のランダ ...

MySQLのバックアップファイルを簡単に作成できるライブラリ「myphp-backup」の利用方法

MySQLのバックアップを取る際にadminerとかから手動で対応するのではなく ...