Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengesahkan nombor telefon mudah alih atau format nombor talian tetap dengan ungkapan biasa PHP

Bagaimana untuk mengesahkan nombor telefon mudah alih atau format nombor talian tetap dengan ungkapan biasa PHP

WBOY
WBOYasal
2023-06-24 08:30:062445semak imbas

Apabila membangunkan aplikasi web, selalunya perlu untuk mengesahkan sama ada nombor telefon mudah alih atau nombor talian tetap yang dimasukkan oleh pengguna adalah dalam format yang betul. Untuk memudahkan pengesahan dan menggesa pengguna tepat pada masanya apabila input tidak betul, kami boleh menggunakan ungkapan biasa dalam PHP untuk mengesan sama ada format nombor memenuhi keperluan.

Yang berikut akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengesahkan nombor telefon mudah alih atau format nombor talian tetap.

Sahkan format nombor telefon bimbit

Nombor telefon mudah alih di tanah besar China ialah 11 digit bermula dengan 1. Anda boleh menggunakan ungkapan biasa berikut untuk pengesahan:

$phone_pattern = '/^1d{10}$/';

di mana:

  • ^ bermaksud pemadanan bermula dari permulaan rentetan
  • 1 bermakna ia mesti bermula dengan nombor 1
  • d bermaksud memadankan mana-mana aksara angka
  • {10} bermaksud memadankan aksara angka yang diulang 10 kali
  • $ bermaksud memadankan ke hujung rentetan

Ungkapan biasa ini dijamin untuk mengesahkan nombor dan syarat 11 digit bermula dengan 1. Menggunakannya pada kod PHP, anda boleh mendapatkan contoh berikut:

function check_mobile($mobile) {
    $phone_pattern = '/^1d{10}$/';
    if (preg_match($phone_pattern, $mobile)) {
        return true;
    } else {
        return false;
    }
}

// 示例测试
$mobile = '13712341234';
if (check_mobile($mobile)) {
    echo "手机号码格式正确";
} else {
    echo "手机号码格式错误";
}

Sahkan format nombor talian tetap

Format nombor talian tetap agak rumit dan format nombor talian tetap berbeza di wilayah yang berbeza, seperti nombor talian tetap di Beijing Ia adalah nombor 10 digit, bermula dengan nombor 1 atau 2. Nombor talian tetap di Shanghai ialah nombor 8 digit atau 9 digit, bermula dengan nombor 2, dsb. Untuk melaksanakan fungsi pengesahan format nombor talian tetap universal, ungkapan biasa yang berbeza perlu ditulis untuk format nombor talian tetap yang berbeza.

Yang berikut menggunakan nombor talian tetap di Beijing dan Shanghai sebagai contoh untuk menunjukkan cara menulis ungkapan biasa yang sepadan.

Nombor talian tetap kawasan Beijing

Nombor talian tetap Beijing bermula dengan nombor 1 atau 2, diikuti dengan 8 digit. Anda boleh menggunakan ungkapan biasa berikut untuk pengesahan:

$tel_pattern = '/^(010|02d)d{8}$/';

di mana:

  • ^ bermaksud padanan dari permulaan rentetan
  • (010|02d) bermaksud 010 atau 02 Tiga digit pada permulaan, | bermaksud atau, d bermaksud memadankan mana-mana aksara angka
  • d{8} bermaksud memadankan 8 aksara angka
  • $ bermaksud memadankan ke hujung rentetan <.>
Ungkapan biasa ini boleh menjamin pengesahan bahawa nombor itu bermula dengan 1 atau 2 dan diikuti dengan 8 digit. Menggunakan ini pada kod PHP, anda boleh mendapatkan contoh berikut:

function check_tel_beijing($tel) {
    $tel_pattern = '/^(010|02d)d{8}$/';
    if (preg_match($tel_pattern, $tel)) {
        return true;
    } else {
        return false;
    }
}

// 示例测试
$tel = '01012345678';
if (check_tel_beijing($tel)) {
    echo "座机号码格式正确";
} else {
    echo "座机号码格式错误";
}

Nombor talian tetap kawasan Shanghai

Nombor talian tetap di Shanghai bermula dengan nombor 2, diikuti dengan 8 atau 9 digit. Anda boleh menggunakan ungkapan biasa berikut untuk pengesahan:

$tel_pattern = '/^2d{7}(?:d{1})?$/';

di mana:

    ^ bermaksud pemadanan bermula dari permulaan rentetan
  • 2 bermakna ia mesti bermula dengan nombor 2
  • d{7} bermaksud memadankan 7 aksara angka
  • (?:d{1}) bermaksud memadankan 1 aksara angka, ?: bermaksud kumpulan bukan menangkap, ? kumpulan itu adalah pilihan
  • $ bermakna padan dengan hujung rentetan
ini boleh memastikan pengesahan bahawa nombor itu bermula dengan 2 dan diikuti dengan 8 atau 9 digit . Menggunakan ini pada kod PHP, anda boleh mendapatkan contoh berikut:

function check_tel_shanghai($tel) {
    $tel_pattern = '/^2d{7}(?:d{1})?$/';
    if (preg_match($tel_pattern, $tel)) {
        return true;
    } else {
        return false;
    }
}

// 示例测试
$tel = '0211234567';
if (check_tel_shanghai($tel)) {
    echo "座机号码格式正确";
} else {
    echo "座机号码格式错误";
}

Ringkasan

Menggunakan ungkapan biasa PHP untuk mengesahkan nombor telefon mudah alih dan format nombor talian tetap boleh meningkatkan data input pengguna dalam ketepatan aplikasi web dengan berkesan . Artikel ini memperkenalkan cara menulis ungkapan biasa untuk pengesahan, yang sesuai untuk format nombor telefon mudah alih dan nombor talian tetap yang paling biasa, dan juga boleh diubah suai dan dilanjutkan mengikut keperluan.

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan nombor telefon mudah alih atau format nombor talian tetap dengan 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