ランダムな文字列を生成するPHPの簡単なカスタムメソッド
/** * 生成随机字符串 * @param string $lenth 长度 * @return string 字符串 */ function get_randomstr($lenth = 6) { return get_random($lenth, '123456789abcdefghijklmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ'); } /** * 产生随机字符串 * * @param int $length 输出长度 * @param string $chars 可选的 ,默认为 0123456789 * @return string 字符串 */ function get_random($length, $chars = '0123456789') { $hash = ''; $max = strlen($chars) - 1; for($i = 0; $i < $length; $i++) { $hash .= $chars[mt_rand(0, $max)]; } return $hash; }
使用法:
echo get_randomstr(6); echo get_randomstr(7);
出力:
vS8wZK hQ17fEI
上記の2つの結果はランダムに生成され、実行するたびに構造が異なります。
分析:
生成された文字列の数をパラメータを通じてメソッド get_randomstr() に渡します。その後、get_randomstr() メソッドは get_random メソッドを通じて乱数を生成し、それを get_randomstr() に返します。このプロセスは 2 つのプロセスを経ますが、アイデアは明確ですが、個人的にはメソッドをカスタマイズする方が面倒だと感じています。実際、このメソッドの利点は、パブリック メソッドで get_random メソッドをハードコーディングしたときに、後で一部の関数が get_random では満たせないことが判明した場合に、get_randomstr メソッドを通じて拡張できることです。
そのため、通常の状況では、次の方法を使用してランダム文字列を生成することをお勧めします:
PHP 乱数を生成するいくつかの方法