您好,登錄后才能下訂單哦!
PHP是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利于學習,使用廣泛,主要適用于Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。使用PHP生成不重復的8位卡號和卡密的方法是什么呢?我們一起看看吧。
一、生成不重復的隨機數字,可自定義長度
/** * 生成不重復的隨機數字 * @param int $start 需要生成的數字開始范圍 * @param int $end 結束范圍 * @param int $length 需要生成的隨機數個數 * @return number 生成的隨機數 */ function getRandNumber($start=0,$end=9,$length=8){ //初始化變量為0 $connt = 0; //建一個新數組 $temp = array(); while($connt < $length){ //在一定范圍內隨機生成一個數放入數組中 $temp[] = mt_rand($start, $end); //$data = array_unique($temp); //去除數組中的重復值用了“翻翻法”,就是用array_flip()把數組的key和value交換兩次。這種做法比用 array_unique() 快得多。 $data = array_flip(array_flip($temp)); //將數組的數量存入變量count中 $connt = count($data); } //為數組賦予新的鍵名 shuffle($data); //數組轉字符串 $str=implode(",", $data); //替換掉逗號 $number=str_replace(',', '', $str); return $number; }
二、隨機生成不重復的8位卡密
function makeCardPassword() { $code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $rand = $code[rand(0,25)] .strtoupper(dechex(date('m'))) .date('d').substr(time(),-5) .substr(microtime(),2,5) .sprintf('%02d',rand(0,99)); for( $a = md5( $rand, true ), $s = '0123456789ABCDEFGHIJKLMNOPQRSTUV', $d = '', $f = 0; $f < 8; $g = ord( $a[ $f ] ), $d .= $s[ ( $g ^ ord( $a[ $f + 8 ] ) ) - $g & 0x1F ], $f++ ); return $d; }
PHP擴展材料:
PHP獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多。
PHP還可以執行編譯后代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
PHP在數據庫方面的豐富支持,也是它迅速走紅的原因之一,它支持下列的數據庫或是數據文件:
Adabas 、D、 DBA、dBase 、dbm 、filePro 、Informix 、InterBase、mSQL 、Microsoft SQL Server、·MySQL、Solid、Sybase、 Oracle 、PostgreSQL
以上就是使用PHP生成不重復的8位卡號和卡密的方法的詳細內容,更多請關注億速云其它相關文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。