Kaedah PHP untuk mengesahkan nombor telefon mudah alih
Nombor telefon mudah alih telah menjadi kaedah hubungan yang sangat diperlukan dalam kehidupan seharian orang ramai, dan pengesahan nombor telefon bimbit juga merupakan bahagian yang sangat penting. Dalam senario seperti pendaftaran laman web dan penerimaan SMS, untuk memastikan kesahihan dan ketepatan nombor telefon mudah alih, kami perlu menggunakan bahasa PHP untuk mengesahkan sama ada nombor telefon mudah alih itu sah. Dalam artikel ini, kami akan memperkenalkan secara terperinci cara menggunakan PHP untuk mengesahkan nombor telefon mudah alih daripada aspek berikut.
Di China, nombor telefon bimbit ialah 11 digit, jadi kami perlu mengesahkan dahulu sama ada nombor telefon mudah alih yang dimasukkan adalah 11 digit panjang, jika tidak Ia bukan nombor telefon mudah alih yang sah. Dalam PHP, anda boleh menggunakan fungsi strlen() untuk mendapatkan panjang rentetan dan menentukan sama ada nombor telefon mudah alih yang dimasukkan ialah 11 digit.
if (strlen($mobile) != 11) { // 不是一个合法的手机号码 }
Di China, tiga digit pertama nombor telefon mudah alih mewakili pengendali yang berbeza, jadi kami perlu untuk mengesahkan yang dimasukkan Tiga digit pertama nombor telefon disahkan untuk memastikan kesahihannya.
// 中国移动: 134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/198 // 中国联通: 130/131/132/155/156/185/186/166 // 中国电信: 133/149/153/173/177/180/181/189/199 $prefix = substr($mobile, 0, 3); // 截取前三位 if (!in_array($prefix, ['134', '135', '136', '137', '138', '139', '150', '151', '152', '157', '158', '159', '182', '183', '184', '187', '188', '198', '130', '131', '132', '155', '156', '185', '186', '166', '133', '149', '153', '173', '177', '180', '181', '189', '199'])) { // 不是一个合法的手机号码 }
Di China, nombor telefon mudah alih mempunyai keperluan format tertentu termasuk yang berikut:
// 11位数字,如:13912345678 // 带区号的11位数字,如:02012345678、075512345678 // 带“-”的11位数字,如:139-1234-5678、020-1234-5678、0755-1234-5678
Oleh itu, kita perlu menggunakan ungkapan biasa untuk mengesahkan sama ada keperluan format di atas dipenuhi.
// 11位数字 if (!preg_match('/^1[3-9]\d{9}$/', $mobile)) { // 不是一个合法的手机号码 } // 带区号的11位数字 if (!preg_match('/^0\d{2,3}\d{7,8}$/', $mobile)) { // 不是一个合法的手机号码 } // 带“-”的11位数字 if (!preg_match('/^(\d{3}-|\d{4}-)?\d{7,8}$/', $mobile)) { // 不是一个合法的手机号码 }
Akhir sekali, kami menggabungkan tiga kaedah pengesahan di atas untuk melaksanakan pengesahan nombor telefon mudah alih dalam PHP.
function validateMobile($mobile) { if (strlen($mobile) != 11) { return false; } $prefix = substr($mobile, 0, 3); if (!in_array($prefix, ['134', '135', '136', '137', '138', '139', '150', '151', '152', '157', '158', '159', '182', '183', '184', '187', '188', '198', '130', '131', '132', '155', '156', '185', '186', '166', '133', '149', '153', '173', '177', '180', '181', '189', '199'])) { return false; } if (!preg_match('/^1[3-9]\d{9}$/', $mobile) && !preg_match('/^0\d{2,3}\d{7,8}$/', $mobile) && !preg_match('/^(\d{3}-|\d{4}-)?\d{7,8}$/', $mobile)) { return false; } return true; } // 示例 if (validateMobile('13912345678')) { echo '手机号码合法'; } else { echo '手机号码不合法'; }
Di atas ialah kaedah untuk mengesahkan nombor telefon bimbit dalam PHP Dengan menggabungkan tiga kaedah pengesahan di atas, anda boleh memastikan kesahihan dan ketepatan nombor telefon bimbit yang dimasukkan. Dalam pembangunan sebenar, kaedah ini juga boleh dirangkumkan ke dalam fungsi awam untuk memudahkan panggilan dalam pelbagai senario.
Atas ialah kandungan terperinci Bagaimana untuk mengesahkan nombor telefon bimbit dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!