PHP正規表現を使用してIDカード番号の市外局番を確認する方法

王林
リリース: 2023-06-24 11:42:02
オリジナル
1115 人が閲覧しました

ID 番号は国民の身分証明書の一意の識別子であり、市外局番は ID 番号の重要な部分です。 PHP では、正規表現を使用して、ID 番号の市外局番が正しいかどうかを確認できます。 IDカード番号の市外局番を確認する方法を紹介します。

まず、ID 番号の市外局番のエンコード規則を理解する必要があります。 ID 番号の最初の 6 桁は市外局番、最初の 2 桁は省(自治区、市)コード、3 桁は市(地域)コード、最後の 3 桁は郡(地区)を表します。コード。その中で、各省と市には対応するコーディングリストがあり、関連情報を問い合わせることで入手できます。

ID 番号の市外局番を確認する前に、以下に示すように、対応する州と都市の市外局番リストを配列に保存する必要があります。

$region_codes = array(
    '110000', '120000', '130000', '140000', '150000', '210000', '220000', '230000', '310000', '320000',
    '330000', '340000', '350000', '360000', '370000', '410000', '420000', '430000', '440000', '450000',
    '460000', '500000', '510000', '520000', '530000', '540000', '610000', '620000', '630000', '640000',
    '650000', '710000', '810000', '820000'
);
ログイン後にコピー

これで、正規表現を使用できるようになります。 ID 番号の市外局番が有効かどうかを照合します。この正規表現は次のように定義できます。

$pattern = '/^[1-9][0-9]{5}$/';
ログイン後にコピー

この正規表現の意味は、ゼロ以外で始まる 6 桁の数字です。このうち、最初の桁は0にすることはできず、次の5桁は任意の数字にすることができます。

次に、以下に示すように、ID 番号の市外局番を確認する関数を作成できます。

function validateRegionCode($region_code) {
    global $region_codes;
    if (in_array($region_code, $region_codes)) {
        return true;
    } else {
        return false;
    }
}
ログイン後にコピー

この関数は、市外局番を表すために使用されるパラメーター $region_code を受け取ります。 ID番号に。グローバル変数 $region_codes が関数で使用され、地域コードの定義されたリストを表します。この関数は、in_array 関数を使用して、$region_code が $region_codes 配列内にあるかどうかを判断します。そうである場合は、地域コードが正当であることを意味し、true を返します。そうでない場合は、地域コードが不正であることを意味し、false を返します。

最後に、以下に示すように、この関数を使用して ID 番号の市外局番が正当であるかどうかを確認できます。

$region_code = substr($id_card, 0, 6); // 截取身份证号码中的地区码
if (validateRegionCode($region_code)) {
    echo '该身份证号码的地区码合法!';
} else {
    echo '该身份证号码的地区码不合法!';
}
ログイン後にコピー

上記のコードでは、最初に ID 番号をインターセプトします。地域コードに substr 関数を追加し、validateRegionCode 関数を呼び出して地域コードが正当かどうかを確認します。市外局番が正しい場合は、対応するプロンプト メッセージが出力されます。

要約すると、上記で紹介した方法により、PHP 正規表現を使用して ID 番号の市外局番が正当かどうかを確認できます。この方法は簡単かつ実用的であり、ID 番号検証の効率と精度を効果的に向上させることができます。

以上がPHP正規表現を使用してIDカード番号の市外局番を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート