rand mt_rand substr 以及生成四位驗證碼
阿新 • • 發佈:2018-12-20
rand
定義:產生一個隨機整數
用法一:int rand(viod) //沒有引數 返回0到getrandmax()之間的偽隨機整數
例如:
$str="abcdefghijklmnopqrstuvwxyz0123456789";
echo getrandmax();//生成最大的隨機數
echo '<br>';
echo rand();
用法二:int rand(int $min,int $max) //可以有範圍
例如:
$str="abcdefghijklmnopqrstuvwxyz0123456789";
echo rand(0,10);
mt_rand
定義:生成更好的隨機數
建議使用mt_rand代替rand
echo mt_rand(0,10);
substr
定義:返回字串的子串
用法:string substr(string $string,int $start[,int $length]) 返回字串string和length引數指定的子字串
echo substr($str,10,2);//比較簡單的用法,start為非負數
//start為負數,返回的字串將從string結尾處向前數第start個字元開始
$str="abcdef";
echo substr($str,-1);//返回f
echo substr($str,-3,1);//返回d
注意:string的長度小於或等於start將返回false。
//如果length為負數,那麼將從string末尾處的字元漏掉,(如果start為負數則從字串尾部算起)
$str="abcdef";
echo substr($str,0,-1);//返回abcde
echo substr($str,-3,-1);//返回de
//如果length的值為0,false,null,那麼將返回一個空字串
$str="abcdef";
echo substr($str,4,-4);//返回""
生成四位驗證碼
//生成四位驗證碼 //思路:隨機從以上字串選出4個 $str="abcdefghijklmnopqrstuvwxyz0123456789"; $len=strlen($str);//計算字串的長度 $yzm=''; for($i=0;$i<4;$i++){ $rand=mt_rand(0,$len-1); $yzm.=substr($str,$rand,1); } echo $yzm;