普通に書くと、ループ構文や乱数関数で5~6行程度必要かと思いますが、substr に str_shuffle と str_repeat を組み合わせると一行で済ますことができます。なお、同じ文字が出てこないで良い場合は、str_shuffle だけで良いと思います。
同じ文字を最大3個まで許す、長さ8文字のパスワードを生成
substr(str_shuffle(str_repeat('0123456789abcdefghijklmnopqrstuvwxyz',3)), 0, 8);
文字列に大文字や記号を加えると、更に複雑なパスワードを生成することができます。str_repeat の第2引数が繰り返しを許す最大文字数になり、substr の第3引数がパスワードの長さになります。
リファレンス
0 件のコメント