Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah format nombor kad pengenalan, pasport atau lesen memandu yang betul

Ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah format nombor kad pengenalan, pasport atau lesen memandu yang betul

PHPz
PHPzasal
2023-06-24 16:28:281395semak imbas

Dalam banyak laman web, pengguna perlu memasukkan beberapa maklumat peribadi, seperti nombor ID, nombor pasport, nombor lesen memandu, dll. Sangat perlu untuk melakukan pengesahan format pada maklumat ini untuk mengelakkan pengguna daripada memasukkan data yang salah dan menjejaskan ketepatan data. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah format nombor kad ID, pasport atau lesen memandu yang betul.

  1. Sahkan nombor ID

Nombor ID ialah rentetan 18 digit atau gabungan nombor dan huruf, di mana digit terakhir mungkin nombor atau huruf X. Struktur nombor ID adalah seperti berikut:

  • 6 digit pertama ialah kod alamat
  • 8 digit seterusnya ialah kod tarikh lahir
  • 4 digit terakhir ialah kod jujukan;

Gunakan ungkapan biasa untuk mengesahkan format nombor ID, anda boleh menggunakan kod berikut:

function checkIDCard($id)
{
    if (!preg_match("/^d{17}[d|x]$|^d{15}$/i", $id)) {
        return false;
    }
    return true;
}

Pertama, fungsi ini menggunakan fungsi preg_match untuk memadankan ungkapan biasa. Operator "|" (pilihan) digunakan dalam ungkapan biasa, menunjukkan bahawa terdapat dua kaedah pengesahan. Dalam cara pertama, nombor ID ialah nombor 18 digit atau gabungan nombor dan huruf, dan digit terakhir mungkin nombor atau huruf X. Dalam cara kedua, nombor ID ialah 15 digit.

  1. Sahkan Nombor Pasport

Nombor pasport ialah rentetan nombor dan huruf, biasanya 6 hingga 9 digit. Struktur nombor pasport adalah seperti berikut:

  • Dua digit pertama ialah kod negara yang mengeluarkan, biasanya singkatan bahasa Inggeris
  • Digit tengah ialah kod pengenalan peribadi
  • Digit terakhir ialah kod pengesahan.

Gunakan ungkapan biasa untuk mengesahkan format nombor pasport Anda boleh menggunakan kod berikut:

function checkPassport($passport)
{
    if (!preg_match('/^[A-Za-z0-9]{6,9}$/', $passport)) {
        return false;
    }
    return true;
}

Fungsi ini menggunakan fungsi preg_match untuk memadankan ungkapan biasa. Operator "[]" (set aksara) digunakan dalam ungkapan biasa untuk memadankan mana-mana satu aksara. Hanya nombor dan huruf besar dan huruf kecil dipadankan di sini, menambah sehingga 6 hingga 9 digit.

  1. Sahkan nombor lesen memandu

Nombor lesen memandu ialah rentetan nombor dan huruf, biasanya 12 digit. Struktur nombor lesen memandu adalah seperti berikut:

  • Digit pertama ialah huruf
  • 4 digit tengah ialah nombor
  • 7 digit terakhir adalah gabungan nombor atau huruf.

Gunakan ungkapan biasa untuk mengesahkan format nombor lesen pemandu Anda boleh menggunakan kod berikut:

function checkDriverLicense($license)
{
    if (!preg_match('/^[A-Za-z][0-9]{4}[A-Za-z0-9]{7}$/', $license)) {
        return false;
    }
    return true;
}

Fungsi ini menggunakan fungsi preg_match untuk memadankan ungkapan biasa. Ungkapan biasa mula-mula sepadan dengan huruf, kemudian 4 nombor, dan akhirnya sepadan dengan 7 nombor atau gabungan huruf.

Ringkasan

Di atas ialah cara menggunakan ungkapan biasa PHP untuk mengesahkan format nombor kad pengenalan, pasport dan lesen memandu. Apabila melakukan pengesahan ungkapan biasa, perhatikan sintaks ungkapan biasa dan jenis pengesahan. Jika digunakan secara tidak wajar, data mungkin tidak disahkan dengan betul, mengakibatkan ketidaktepatan data.

Atas ialah kandungan terperinci Ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah format nombor kad pengenalan, pasport atau lesen memandu yang betul. 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