Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengesahkan kod kawasan nombor kad ID menggunakan ungkapan biasa PHP

Bagaimana untuk mengesahkan kod kawasan nombor kad ID menggunakan ungkapan biasa PHP

王林
王林asal
2023-06-24 09:16:291099semak imbas

Nombor ID ialah pengecam unik dokumen pengenalan warganegara dan kod kawasan ialah bahagian penting nombor ID. Dalam PHP, kita boleh menggunakan ungkapan biasa untuk mengesahkan sama ada kod kawasan dalam nombor ID adalah betul. Berikut akan memperkenalkan kaedah untuk mengesahkan kod kawasan nombor kad pengenalan.

Pertama sekali, kita perlu memahami peraturan pengekodan kod kawasan dalam nombor kad pengenalan. Enam digit pertama dalam nombor ID mewakili kod kawasan, dua digit pertama mewakili kod wilayah (wilayah autonomi, perbandaran), digit ketiga mewakili kod bandar (wilayah) dan tiga digit terakhir mewakili daerah (daerah) kod. Antaranya, setiap wilayah dan bandar mempunyai senarai pengekodan yang sepadan, yang boleh kami perolehi dengan menanyakan maklumat yang berkaitan.

Sebelum mengesahkan kod kawasan nombor ID, anda perlu menyimpan senarai kod kawasan wilayah dan bandar yang sepadan dalam tatasusunan, seperti yang ditunjukkan di bawah:

$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'
);

Kemudian, kita boleh menggunakan ungkapan biasa untuk memadankan sama ada kod kawasan dalam nombor ID adalah sah. Ungkapan biasa ini boleh ditakrifkan sebagai:

$pattern = '/^[1-9][0-9]{5}$/';

Maksud ungkapan biasa ini ialah: nombor 6 digit bermula dengan bukan sifar. Antaranya, digit pertama tidak boleh 0, dan 5 digit berikut boleh menjadi sebarang nombor.

Seterusnya, kita boleh menulis fungsi untuk mengesahkan kod wilayah nombor ID, seperti yang ditunjukkan di bawah:

function validateRegionCode($region_code) {
    global $region_codes;
    if (in_array($region_code, $region_codes)) {
        return true;
    } else {
        return false;
    }
}

Fungsi ini menerima parameter $region_code, yang digunakan untuk mewakili kod wilayah dalam nombor kad pengenalan. Pembolehubah global $region_codes digunakan dalam fungsi, yang mewakili senarai kod wilayah yang ditentukan. Fungsi ini menggunakan fungsi in_array untuk menentukan sama ada $region_code berada dalam tatasusunan $region_codes. Jika ya, ini bermakna kod wilayah itu sah dan sebaliknya, ini bermakna kod wilayah itu menyalahi undang-undang dan mengembalikan palsu.

Akhir sekali, kami boleh menggunakan fungsi ini untuk mengesahkan sama ada kod kawasan dalam nombor ID adalah sah, seperti yang ditunjukkan di bawah:

$region_code = substr($id_card, 0, 6); // 截取身份证号码中的地区码
if (validateRegionCode($region_code)) {
    echo '该身份证号码的地区码合法!';
} else {
    echo '该身份证号码的地区码不合法!';
}

Dalam kod di atas, kami terlebih dahulu memintas nombor ID melalui kod wilayah fungsi substr dalam kod rantau, dan kemudian panggil fungsi validateRegionCode untuk mengesahkan sama ada kod wilayah itu sah. Jika kod kawasan adalah sah, mesej gesaan yang sepadan akan dikeluarkan.

Ringkasnya, melalui kaedah yang diperkenalkan di atas, kami boleh menggunakan ungkapan biasa PHP untuk mengesahkan sama ada kod kawasan dalam nombor ID adalah sah. Kaedah ini mudah dan praktikal, serta boleh meningkatkan kecekapan dan ketepatan pengesahan nombor ID dengan berkesan.

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan kod kawasan nombor kad ID menggunakan ungkapan biasa PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn