作者mydoc (mydoc)
看板PHP
标题[请益] 请教台湾身份证演算法
时间Wed Aug 28 08:11:53 2013
$j =
array(A=>10,B=>11,C=>12,D=>13,E=>14,F=>15,G=>16,H=>17,I=>34,J=>18,K=>19,
L=>20,M=>21,N=>22,O=>35,P=>23,Q=>24,R=>25,S=>26,T=>27,U=>28,V=>29,W=>30,
X=>31,Y=>32,Z=>33);
$str="A123456789";
$i = str_split($str);
$i[0]=$j[$i[0]];
$i = "$i[0]$i[1]$i[2]$i[3]$i[4]$i[5]$i[6]$i[7]$i[8]$i[9]";
$i = str_split($i);
$j =
($i[0]*1)+($i[1]*9)+($i[2]*8)+($i[3]*7)+($i[4]*6)+($i[5]*5)+
($i[6]*4)+($i[7]*3)+($i[8]*2)+($i[9]*1);
$j = $j%10;
$j = 10-$j ;
print_r($j);
台湾身份证算法大家应该都知道..但我不会写演算法
只能用很笨很暴力的方法把字串切开再合起来再切开再算
请问还有更好的算法吗?另外对於中低手比较推荐哪本PHP的书藉?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.202.9.7