Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Saya Mendapat 'Pengubahsuai Tidak Diketahui 'g' dalam preg_match' dan Bagaimana Saya Membetulkannya?

Mengapa Saya Mendapat 'Pengubahsuai Tidak Diketahui 'g' dalam preg_match' dan Bagaimana Saya Membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-11-13 10:31:02758semak imbas

Why Am I Getting

Mengatasi "Pengubah suai tidak diketahui 'g' dalam preg_match dalam PHP"

Semasa meneroka selok-belok ungkapan biasa, anda mungkin mengalami ralat mesej yang menyatakan "Pengubah suai tidak diketahui 'g' dalam..." apabila menggunakan preg_match. Isu ini timbul apabila cuba menggunakan pengubah suai 'g' dalam corak regex anda. Walau bagaimanapun, tiada pengubah suai 'g' dalam preg_match.

Untuk menyelesaikan isu ini, anda perlu bertukar kepada fungsi preg_match_all. Tidak seperti preg_match, yang mencari kejadian pertama corak dan mengembalikan nilai boolean, preg_match_all mencari semua kemunculan corak dan mengembalikan tatasusunan padanan.

Corak Regex Diubah Suai Dengan Betul

Corak regex asal anda ialah:

/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/gim

Untuk menggunakan corak ini dengan preg_match_all, ubah suainya seperti berikut:

/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im

Kod Disemak

Ganti panggilan preg_match asal anda dengan yang berikut:

preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)

Dengan membuat pelarasan mudah ini, anda boleh menghapuskan ralat "'g' modifier not supported" dan memproses berbilang kejadian corak dengan betul dalam rentetan anda.

Atas ialah kandungan terperinci Mengapa Saya Mendapat 'Pengubahsuai Tidak Diketahui 'g' dalam preg_match' dan Bagaimana Saya Membetulkannya?. 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