اعتبار سنجی ( صحت ) کد ملی در PHP

اعتبار سنجی ( صحت ) کد ملی در PHP – با کمک این آموزش یاد خواهید گرفت کد ملی را بررسی کرده و به کاربر نمایش دهید آیا کد ملی وارد شده معتبر می باشد یا خیر .
ابتدا باید در نظر داشت که کد ملی شامل 10 رقم می باشد ، و بدون حروف .
باید در نظر داشت اعتبار سنجی کد ملی 3 رقم اول مربوط به شهر / استان می باشد 6 رقم بعدی منحصر به فرد و رقم آخر کنترلی و حاصلی از 9 رقم اول است .
( صحت ) کد ملی به صورت عملی
$meli = '1234667891';
function checkMeliCode($meli)
{
$cDigitLast = substr($meli , strlen($meli)-1);
$fMeli = strval(intval($meli));
if((str_split($fMeli))[0] == "0" && !(8 <= strlen($fMeli) && strlen($fMeli) < 10)) return false;
$nineLeftDigits = substr($meli , 0 , strlen($meli) - 1);
$positionNumber = 10;
$result = 0;
foreach(str_split($nineLeftDigits) as $chr){
$digit = intval($chr);
$result += $digit * $positionNumber;
$positionNumber--;
}
$remain = $result % 11;
$controllerNumber = $remain;
if(2 <= $remain){
$controllerNumber = 11-$remain;
}
return $cDigitLast == $controllerNumber;
}
echo checkMeliCode($meli) ? 'معتبر' : 'نا معتبر';
ارسال نظر