Ekspresi biasa PHP: Cara memadankan semua kotak butang radio dalam HTML
Dalam pembangunan bahagian hadapan, kita selalunya perlu mengendalikan dan mendapatkan elemen dalam halaman web, dan dalam proses ini, ungkapan biasa Ungkapan ialah alat yang sangat berguna. Dalam halaman HTML, kotak butang radio adalah salah satu elemen biasa, dan dalam artikel ini, kami akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk memadankan semua kotak butang radio.
Pertama sekali, kita perlu mengetahui struktur butang radio dalam HTML. Butang radio yang paling ringkas biasanya mengandungi elemen berikut:
<label> <input type="radio" name="radio_group"> 选项1 </label>
di mana, atribut <input>
bagi elemen type
ialah radio
dan atribut name
ialah nama kumpulan butang radio. Dalam kumpulan butang radio yang sama, semua kotak butang radio harus mempunyai nilai atribut name
yang sama dan kotak butang radio yang berbeza harus dibezakan dengan atribut value
yang berbeza.
Seterusnya, kita boleh menggunakan fungsi preg_match_all()
PHP untuk memadankan semua butang radio. Kod khusus adalah seperti berikut:
$pattern = '/<input[^>]*type="radio"[^>]*>/i'; $matches = array(); preg_match_all($pattern, $html, $matches);
Antaranya, corak ungkapan biasa ialah /<input[^>]*type="radio"[^>]*>/i
, yang bermaksud memadankan semua elemen type="radio"
dengan atribut <input>
. Fungsi preg_match_all()
mengembalikan tatasusunan $matches
yang mengandungi semua elemen yang dipadankan. Kita boleh menggunakan fungsi print_r()
untuk mengeluarkan tatasusunan ini:
print_r($matches);
Hasil output adalah seperti berikut:
Array ( [0] => Array ( [0] => <input type="radio" name="radio_group" value="1"> [1] => <input type="radio" name="radio_group" value="2"> [2] => <input type="radio" name="radio_group" value="3"> [3] => <input type="radio" name="other_group" value="4"> ) )
Seperti yang anda lihat, $matches[0]
mengandungi kod HTML semua radio yang sepadan kotak butang. Jika kita hanya mahu mendapatkan nilai atribut name
dan value
butang radio, kita boleh mengubah suai ungkapan biasa kepada:
$pattern = '/<input[^>]*type="radio"[^>]*name="(.+?)"[^>]*value="(.+?)"[^>]*>/i';
dengan $matches[1]
ialah nilai atribut name
butang radio , $matches[2]
ialah nilai atribut value
. Kita boleh mendapatkan nilai atribut semua butang radio dengan menggelung melalui tatasusunan:
foreach ($matches[0] as $key => $value) { preg_match('/<input[^>]*type="radio"[^>]*name="(.+?)"[^>]*value="(.+?)"[^>]*>/i', $value, $match); $name = $match[1]; $value = $match[2]; echo "单选框 $key:name = $name, value = $value<br />"; }
Hasil output adalah seperti berikut:
单选框 0:name = radio_group, value = 1 单选框 1:name = radio_group, value = 2 单选框 2:name = radio_group, value = 3 单选框 3:name = other_group, value = 4
Dengan cara ini, kita boleh menggunakan ungkapan biasa PHP untuk sepadan dengan semua butang radio Bingkai. Sudah tentu, dalam proses pembangunan sebenar, ungkapan biasa tidak mahakuasa, dan kadangkala menyebabkan padanan yang tidak tepat. Oleh itu, kita perlu menggunakan ungkapan biasa dengan berhati-hati mengikut situasi tertentu, dan kita juga perlu memahami beberapa kaedah manipulasi HTML DOM yang lain.
Atas ialah kandungan terperinci Ungkapan Biasa PHP: Bagaimana untuk memadankan semua butang radio dalam HTML. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!