首頁 >後端開發 >PHP問題 >php不重複字串的生成方法

php不重複字串的生成方法

藏色散人
藏色散人原創
2020-11-27 09:26:012849瀏覽

php不重複字串的產生方法:1、透過「$pattern{mt_rand(0,35)」方式產生php隨機數;2、透過「function make_password( $length=8){.. .}”方式產生不重複字串。

php不重複字串的生成方法

推薦:《PHP影片教學

本教學操作環境:Windows7系統、PHP7.1版,此方法適用於所有品牌電腦。

php隨機產生不重複字串

方法一:

<?php 
function randomkeys($length) 
{ 
 $pattern = &#39;1234567890abcdefghijklmnopqrstuvwxyz 
    ABCDEFGHIJKLOMNOPQRSTUVWXYZ&#39;;
 for($i=0;$i<$length;$i++) 
 { 
  $key .= $pattern{mt_rand(0,35)}; //生成php随机数 
 } 
 return $key; 
} 
echo randomkeys(16);
?>

方法二:

<?php 
function make_password( $length = 8 )
{
    // 密码字符集,可任意添加你需要的字符
    $chars = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, 
    &#39;i&#39;, &#39;j&#39;, &#39;k&#39;, &#39;l&#39;,&#39;m&#39;, &#39;n&#39;, &#39;o&#39;, &#39;p&#39;, &#39;q&#39;, &#39;r&#39;, &#39;s&#39;, 
    &#39;t&#39;, &#39;u&#39;, &#39;v&#39;, &#39;w&#39;, &#39;x&#39;, &#39;y&#39;,&#39;z&#39;, &#39;A&#39;, &#39;B&#39;, &#39;C&#39;, &#39;D&#39;, 
    &#39;E&#39;, &#39;F&#39;, &#39;G&#39;, &#39;H&#39;, &#39;I&#39;, &#39;J&#39;, &#39;K&#39;, &#39;L&#39;,&#39;M&#39;, &#39;N&#39;, &#39;O&#39;, 
    &#39;P&#39;, &#39;Q&#39;, &#39;R&#39;, &#39;S&#39;, &#39;T&#39;, &#39;U&#39;, &#39;V&#39;, &#39;W&#39;, &#39;X&#39;, &#39;Y&#39;,&#39;Z&#39;, 
    &#39;0&#39;, &#39;1&#39;, &#39;2&#39;, &#39;3&#39;, &#39;4&#39;, &#39;5&#39;, &#39;6&#39;, &#39;7&#39;, &#39;8&#39;, &#39;9&#39;);
    // 在 $chars 中随机取 $length 个数组元素键名
    $keys = array_rand($chars, $length); 
    $password = &#39;&#39;;
    for($i = 0; $i < $length; $i++)
    {
        // 将 $length 个数组元素连接成字符串
        $password .= $chars[$keys[$i]];
    }
    return $password;
}
echo make_password(18);//生成18位字符串
?>

以上是php不重複字串的生成方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn