勉強したことのメモ

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でシンプルな英数字のCAPTCHAを「Gregwar / Captcha」ライブラリで実装する方法
PHPでシンプルな英数字のCAPTCHAを「Gregwar / Captcha」ライブラリで実装する方法

PHPでシンプルなランダム英数字のCAPTCHAを実装したい。「Gregwar ...

JavaScriptにてテキストボックスにサジェスト機能を実装できる「autoComplete.js」の利用方法
JavaScriptにてテキストボックスにサジェスト機能を実装できる「autoComplete.js」の利用方法

以前にjQuery UIでテキストボックスにサジェスト(入力補助)機能を実装する ...

jQueryプラグインでクリップボードにコピーする方法(clipboard.js)
jQueryプラグインでクリップボードにコピーする方法(clipboard.js)

ページ上のボタンをクリックすることで特定の文章をクリップボードにコピーしたかった ...

PHPで簡単にカレンダーを生成できるライブラリ「PHP Calendar」の利用方法
PHPで簡単にカレンダーを生成できるライブラリ「PHP Calendar」の利用方法

PHPでカレンダーを描写したいということがたまにある。今までバニラPHPで書いて ...

Lightboxの最新版ライブラリ「Lightbox3」の利用方法サンプル
Lightboxの最新版ライブラリ「Lightbox3」の利用方法サンプル

画像拡大(モーダル表示)系のライブラリはLightbox2を使用していたが、最新 ...