php 检测Israeli ID (9 digits)是否有效的解决办法

内容摘要
这篇文章主要为大家详细介绍了php 检测Israeli ID (9 digits)是否有效的简单示例,具有一定的参考价值,可以用来参考一下。

本文实例讲述了 php检测Israeli ID (9 digits)是否
文章正文

这篇文章主要为大家详细介绍了php 检测Israeli ID (9 digits)是否有效的简单示例,具有一定的参考价值,可以用来参考一下。

本文实例讲述了 php检测Israeli ID (9 digits)是否有效,对此感兴趣的朋友,看看idc笔记做的技术笔记。经测试代码如下:

/**
 * 检测Israeli ID (9 digits)是否有效
 *
 * @param 
 * @arrange (www.idcnote.com)
 **/
function toCharArray($input){ 
    $len = strlen($input); 
    for ($j=0;$j<$len;$j++){ 
        $char[$j] = substr($input, $j, 1); 
    }    
    return ($char); 
} 
         
         
function validateID($ID){ 
        //Clean spaces 
        $ID = ereg_replace('[-[:space:]]', '',$ID); 
         
        //Grab the test digit 
        $Bikoret=substr($ID,8,1);
        //Take only 8 left digits of the Id. 
        $ID = substr($ID,0,strlen($ID)-1); 
        $dig = toCharArray($ID); 
        $numdig = sizeof($dig); 
        $j = 0; 
                 
        for($i=($numdig-1) ; $i>=0 ; $i-=2){ 
                $dbl[$j] = $dig[$i] * 2; 
                $j++; 
        } 
        $dblsz = sizeof($dbl); 
        $validate = 0; 
   
        //Sum all the 2x 
        for($i=0 ; $i<$dblsz ; $i++){ 
                $add = toCharArray($dbl[$i]); 
                for($j=0 ; $j<sizeof($add) ; $j++){ 
                        $validate += $add[$j]; 
                } 
                $add = ''; 
        }
        //Sum all the 1x 
        for ($i=($numdig-2); $i>=0; $i-=2){ 
                $validate += $dig[$i]; 
        } 
        If($validate % 10 != 0) { 
                $Bikoret1=(substr($validate, 0, 1) + 1) * 10; 
        } 
        Else { 
                $Bikoret1=$validate; 
        } 
        If($Bikoret1 - $validate == $Bikoret) return 1; 
        else return 0; 
}                


/***   代码来自php教程(www.idcnote.com)   ***/

注:关于php 检测Israeli ID (9 digits)是否有效的简单示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!