目的
- Laravelで桁数を指定したランダムな文字列の生成方法をまとめる
例
-
下記のようにヘルパ関数を用いてランダムな文字列を生成する。
Str::random(生成桁数);
-
本処理はPHPのrandom_bytes関数を使用してランダムな文字列を生成している。
-
余談であるがPHPのrandom_bytes関数が使用する不規則性のソースはOSやプラットフォームによって異なっているらしい。どれも使えないとき(例外時)は基底クラスを投げるらしい。
- Windows: CNG-API
- Linux: getrandom(2)
- その他: /dev/urandom
具体例
-
30桁のランダムな文字列を生成し
$str
に格納する処理を下記に記載する。$str = Str::random(30);