注意:站長關於此篇文章有新發表,你應該轉閱此文章【身份證驗證程式 for PHP (精簡版)】
最近需要寫到身份證字號驗證,參考相關網站介紹的規則,所試著也以PHP來寫看看這個函式。
//************** // 身份證檢查 //************** function checkNick($id){ //建立字母分數陣列 $head = array('A'=>1,'I'=>39,'O'=>48,'B'=>10,'C'=>19,'D'=>28, 'E'=>37,'F'=>46,'G'=>55,'H'=>64,'J'=>73,'K'=>82, 'L'=>2,'M'=>11,'N'=>20,'P'=>29,'Q'=>38,'R'=>47, 'S'=>56,'T'=>65,'U'=>74,'V'=>83,'W'=>21,'X'=>3, 'Y'=>12,'Z'=>30); //建立加權基數陣列 $multiply = array(8,7,6,5,4,3,2,1); //檢查身份字格式是否正確 if (ereg("^[a-zA-Z][1-2][0-9]+$",$id) && strlen($id) == 10){ //切開字串 $len = strlen($id); for($i=0; $i接著是產生器
//*************** // 身份證產生 //*************** function getRandID(){ //建立字母分數陣列 $headPoint = array('A'=>1,'I'=>39,'O'=>48,'B'=>10,'C'=>19,'D'=>28, 'E'=>37,'F'=>46,'G'=>55,'H'=>64,'J'=>73,'K'=>82, 'L'=>2,'M'=>11,'N'=>20,'P'=>29,'Q'=>38,'R'=>47, 'S'=>56,'T'=>65,'U'=>74,'V'=>83,'W'=>21,'X'=>3, 'Y'=>12,'Z'=>30); //建立加權基數陣列 $multiply = array(8,7,6,5,4,3,2,1); //取得隨機數字 $number = mt_rand(1,2); for($i=0 ;$i
全站熱搜