Heim php教程 PHP源码 用PHP写的身份证验证程序

用PHP写的身份证验证程序

Jun 08, 2016 pm 05:33 PM
return substr

<script>ec(2);</script>
写了几个身份证方面的函数,个人感觉挺有用的,特别是在网络问卷调查时,对个人信息里的身份证进行验证很有用,但是应者寥寥,还是收在自己的blog里算了。
 

<?php
// 计算身份证校验码,根据国家标准GB 11643-1999
function idcard_verify_number($idcard_base){
 if (strlen($idcard_base) != 17){ return false; }
 // 加权因子
 $factor = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
 // 校验码对应值
 $verify_number_list = array(’1’, ’0’, ’X’, ’9’, ’8’, ’7’, ’6’, ’5’, ’4’, ’3’, ’2’);
 $checksum = 0;
 for ($i = 0; $i < strlen($idcard_base); $i ){
  $checksum = substr($idcard_base, $i, 1) * $factor[$i];
 }
 $mod = $checksum % 11;
 $verify_number = $verify_number_list[$mod];
 return $verify_number;
}
// 将15位身份证升级到18位
function idcard_15to18($idcard){
 if (strlen($idcard) != 15){
  return false;
 }else{
  // 如果身份证顺序码是996 997 998 999,这些是为百岁以上老人的特殊编码
  if (array_search(substr($idcard, 12, 3), array(’996’, ’997’, ’998’, ’999’)) !== false){
   $idcard = substr($idcard, 0, 6) . ’18’. substr($idcard, 6, 9);
  }else{
   $idcard = substr($idcard, 0, 6) . ’19’. substr($idcard, 6, 9);
  }
 }
 $idcard = $idcard . idcard_verify_number($idcard);
 return $idcard;
}
// 18位身份证校验码有效性检查
function idcard_checksum18($idcard){
 if (strlen($idcard) != 18){ return false; }
 $idcard_base = substr($idcard, 0, 17);
 if (idcard_verify_number($idcard_base) != strtoupper(substr($idcard, 17, 1))){
  return false;
 }else{
  return true;
 }
}
?>

  其中的$idcard_base是指身份证中的本位码,本位码是18位身份证里才有的,也就是18位身份证的前17位,最后一位称为校验码
  一般在使用的时候不用直接调用idcard_verify_number(),平时的应用大多是使用后两个函数,这些函数都没有关心身份证字符串的格式问题,在调用前自行进行格式检查。
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Detaillierte Erläuterung der Verwendung von Return in der C-Sprache Detaillierte Erläuterung der Verwendung von Return in der C-Sprache Oct 07, 2023 am 10:58 AM

Die Verwendung von return in der C-Sprache ist: 1. Für Funktionen, deren Rückgabewerttyp ungültig ist, können Sie die Rückgabeanweisung verwenden, um die Ausführung der Funktion vorzeitig zu beenden. 2. Für Funktionen, deren Rückgabewerttyp nicht ungültig ist, ist die Funktion von Die Return-Anweisung dient dazu, die Ausführung der Funktion zu beenden. 3. Beenden Sie die Ausführung der Funktion vorzeitig wenn die Funktion keinen Wert zurückgibt.

Wie ist die Ausführungsreihenfolge von Return- und Final-Anweisungen in Java? Wie ist die Ausführungsreihenfolge von Return- und Final-Anweisungen in Java? Apr 25, 2023 pm 07:55 PM

Quellcode: publicclassReturnFinallyDemo{publicstaticvoidmain(String[]args){System.out.println(case1());}publicstaticintcase1(){intx;try{x=1;returnx;}finally{x=3;}}}# Ausgabe Die Ausgabe des obigen Codes kann einfach zu dem Schluss kommen: return wird ausgeführt, bevor wir uns schließlich ansehen, was auf der Bytecode-Ebene passiert. Im Folgenden wird ein Teil des Bytecodes der Methode case1 abgefangen und mit dem Quellcode verglichen, um die Bedeutung jeder Anweisung darin zu kommentieren

PHP gibt den ASCII-Wert des ersten Zeichens der Zeichenfolge zurück PHP gibt den ASCII-Wert des ersten Zeichens der Zeichenfolge zurück Mar 21, 2024 am 11:01 AM

In diesem Artikel wird der ASCII-Wert des ersten Zeichens der von PHP zurückgegebenen Zeichenfolge ausführlich erläutert. Der Herausgeber hält dies für sehr praktisch, daher teile ich ihn als Referenz mit. PHP gibt den ASCII-Wert des ersten Zeichens einer Zeichenfolge zurück. Einführung In PHP ist das Abrufen des ASCII-Werts des ersten Zeichens einer Zeichenfolge eine gängige Operation, die grundlegende Kenntnisse der Zeichenfolgenverarbeitung und Zeichenkodierung erfordert. ASCII-Werte werden zur Darstellung des numerischen Werts von Zeichen in Computersystemen verwendet und sind für den Zeichenvergleich, die Datenübertragung und die Speicherung von entscheidender Bedeutung. Der Prozess zum Abrufen des ASCII-Werts des ersten Zeichens einer Zeichenfolge umfasst die folgenden Schritte: Abrufen der Zeichenfolge: Bestimmen Sie die Zeichenfolge, für die Sie den ASCII-Wert abrufen möchten. Es kann eine Variable oder eine String-Konstante sein

PHP gibt den String von der Startposition bis zur Endposition eines Strings in einem anderen String zurück PHP gibt den String von der Startposition bis zur Endposition eines Strings in einem anderen String zurück Mar 21, 2024 am 10:31 AM

In diesem Artikel wird ausführlich erläutert, wie PHP die Zeichenfolge von der Startposition zur Endposition einer Zeichenfolge in einer anderen Zeichenfolge zurückgibt. Der Herausgeber hält dies für recht praktisch, daher teile ich es Ihnen als Referenz mit diesem Artikel können Sie etwas abgewinnen. Verwenden Sie die Funktion substr() in PHP, um Teilzeichenfolgen aus einer Zeichenfolge zu extrahieren. Die Funktion substr() kann Zeichen innerhalb eines angegebenen Bereichs aus einer Zeichenfolge extrahieren. Die Syntax lautet wie folgt: substr(string,start,length) wobei: string: der ursprüngliche String, aus dem der Teilstring extrahiert werden soll. start: Der Index der Startposition des Teilstrings (beginnend bei 0). Länge (optional): Die Länge des Teilstrings. Wenn nicht angegeben, dann

Wie verwendet Vue3 den Setup-Syntaxzucker, um das Schreiben von Return zu verweigern? Wie verwendet Vue3 den Setup-Syntaxzucker, um das Schreiben von Return zu verweigern? May 12, 2023 pm 06:34 PM

Vue3.2-Setup-Syntaxzucker ist ein Syntaxzucker zur Kompilierungszeit, der die kombinierte API in einer einzelnen Dateikomponente (SFC) verwendet, um das umständliche Setup in Vue3.0 zu lösen. Die durch den Import eingeführten deklarierten Variablen, Funktionen und Inhalte werden bereitgestellt Rückkehr, damit sie in Vue3.0 verwendet werden können. 1. Es besteht keine Notwendigkeit, deklarierte Variablen, Funktionen und Inhalte zurückzugeben, die durch Import während der Verwendung eingeführt wurden }from'./utils'//variable constmsg='Hello !'//function func

Detaillierte Erläuterung der Rückgabewerte und Rückgabeanweisungen von JavaScript-Funktionen Detaillierte Erläuterung der Rückgabewerte und Rückgabeanweisungen von JavaScript-Funktionen Aug 04, 2022 am 09:46 AM

JavaScript-Funktionen stellen zwei Schnittstellen zur Interaktion mit der Außenwelt bereit. Die Parameter dienen als Eingang zum Empfang externer Informationen; der Rückgabewert dient als Ausgang für die Rückmeldung der Operationsergebnisse an die Außenwelt. Der folgende Artikel wird Ihnen helfen, den Rückgabewert der JavaScript-Funktion zu verstehen und die Verwendung der Rückgabeanweisung kurz zu analysieren. Ich hoffe, er wird Ihnen hilfreich sein!

So verwenden Sie den Rückgabewert in Python So verwenden Sie den Rückgabewert in Python Oct 07, 2023 am 11:10 AM

Bei der Rückgabe des Python-Rückgabewerts wird die Ausführung sofort gestoppt, wenn die Funktion die Rückgabeanweisung ausführt, und der angegebene Wert wird an die Stelle zurückgegeben, an der die Funktion aufgerufen wurde. Detaillierte Verwendung: 1. Einen einzelnen Wert zurückgeben; 2. Einen Nullwert zurückgeben; 4. Die Ausführung der Funktion vorzeitig beenden;

Verwenden Sie das Schlüsselwort „return' in JavaScript Verwenden Sie das Schlüsselwort „return' in JavaScript Feb 18, 2024 pm 12:45 PM

Für die Verwendung von „return“ in JavaScript sind bestimmte Codebeispiele erforderlich. In JavaScript wird die „return“-Anweisung verwendet, um den von einer Funktion zurückgegebenen Wert anzugeben. Es kann nicht nur dazu verwendet werden, die Ausführung einer Funktion zu beenden, sondern auch einen Wert an die Stelle zurückzugeben, an der die Funktion aufgerufen wurde. Die Return-Anweisung hat die folgenden allgemeinen Verwendungszwecke: Einen Wert zurückgeben Die Return-Anweisung kann verwendet werden, um einen Wert an die Stelle zurückzugeben, an der die Funktion aufgerufen wird. Hier ist ein einfaches Beispiel: functionadd(a,b){

See all articles