Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah alamat e-mel yang betul

Cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah alamat e-mel yang betul

王林
王林asal
2023-06-24 17:03:451112semak imbas

Dengan perkembangan Internet, e-mel telah menjadi bahagian penting dalam kehidupan seharian manusia. Dalam pembangunan laman web, mengesahkan alamat e-mel yang dimasukkan pengguna adalah operasi yang perlu dan biasa. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah alamat e-mel yang betul.

  1. Ketahui tentang ungkapan biasa

Ungkapan biasa ialah alat yang digunakan untuk memadankan corak aksara. Dalam PHP, pemadanan rentetan biasa dicapai dengan menggunakan fungsi preg_match(). Sintaksnya adalah seperti berikut:

preg_match($pattern, $subject, $matches);

di mana $pattern ialah ungkapan biasa, $subject ialah rentetan yang perlu dipadankan dan $match ialah hasil padanan. Fungsi mengembalikan 1 atau 0, masing-masing menunjukkan padanan yang berjaya dan kegagalan.

  1. Nyatakan format alamat e-mel

Sebelum mengesahkan alamat e-mel, anda perlu menjelaskan format alamat e-mel yang betul. Secara umumnya, alamat e-mel yang sah harus memenuhi keperluan berikut:

  • Alamat e-mel dibahagikan kepada dua bahagian dengan simbol "@", separuh kiri ialah nama pengguna dan separuh kanan ialah pelayan mel (termasuk domain nama dan nama hos).
  • Nama pengguna tidak boleh mengandungi simbol @ dan tidak boleh bermula atau berakhir dengan noktah "."
  • Nama domain terdiri daripada satu atau lebih aksara yang dipisahkan oleh satu atau lebih noktah ".".
  • Segmen nama domain terakhir ialah nama domain peringkat atas, termasuk "com", "cn", "org", dll.
  1. Menulis ungkapan biasa

Selepas memahami format alamat e-mel yang sah, kami boleh menulis ungkapan biasa mengikut peraturan. Berikut ialah ungkapan biasa umum untuk mengesahkan alamat e-mel:

$pattern = '/^[w-.]+@([w-]+.)+[a-zA-Z]{2,4}$/';

Antaranya, ^ bermakna ia mesti bermula dengan ungkapan biasa ini dan $ bermakna ia mesti berakhir dengan ungkapan biasa ini. [w-.]+ mewakili nama pengguna, yang boleh menjadi satu atau lebih aksara berturut-turut bagi huruf Inggeris, nombor, garis bawah, sempang dan noktah. @ mewakili pembatas. ([w-]+.)+ mewakili nama domain, rentetan yang terdiri daripada beberapa huruf, nombor, garis bawah dan sempang diikuti dengan satu atau lebih noktah. Akhir sekali, [a-zA-Z]{2,4} mewakili nama domain peringkat teratas, yang hanya dibenarkan terdiri daripada 2 hingga 4 huruf.

  1. Kod pelaksanaan

Selepas menulis ungkapan biasa, kami boleh menggunakannya dalam kod PHP untuk mengesahkan alamat e-mel. Berikut ialah kod PHP yang menggunakan fungsi preg_match() untuk mengesahkan rentetan input:

$email = $_POST['email'];
$pattern = '/^[w-.]+@([w-]+.)+[a-zA-Z]{2,4}$/';
if (preg_match($pattern, $email)) {
    echo "邮箱地址正确!";
} else {
    echo "邮箱地址不正确!";
}

Pertama, kami mendapat alamat e-mel yang dimasukkan oleh pengguna melalui $_POST[] dan menyimpannya dalam pembolehubah $email. Kemudian, gunakan ungkapan biasa di atas untuk menentukan sama ada rentetan input ialah alamat e-mel yang betul. Jika perlawanan berjaya, "Alamat e-mel adalah betul!"

  1. Kesimpulan

Artikel ini memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah alamat e-mel yang betul. Dalam projek sebenar, pengesahan alamat e-mel adalah penting dan menguasai peraturan padanan ungkapan biasa dan penggunaan fungsi PHP boleh membantu kami menyelesaikan operasi pengesahan dengan lebih baik.

Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah alamat e-mel 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