PHP htmlspecialchars() 函数
实例
将预定义的字符 "<" (小于)和 ">" (大于)转换为 HTML 实体:
<?php $str = "This is some <b>bold</b> text."; echo htmlspecialchars($str); ?>
ການສະແດງ HTML ຂອງລະບຽບຂັ້ນນີ້ (ກວດກາລະບຽບແຫຼ່ງ):
<!DOCTYPE html> <html> <body> This is some <b>bold</b> text. </body> </html>
ການສະແດງຂອງວິດີໂອຂອງລະບຽບຂັ້ນນີ້:
This is some <b>bold</b> text.
定义和用法
htmlspecialchars() 函数将预定义的字符转换为 HTML 实体。
预定义的字符是:
- & (和号)成为 &
- " (双引号)成为 "
- ' (单引号)成为 '
- < (小于)成为 <
- > (大于)成为 >
提示:如需将特殊 HTML 实体转换回字符,请使用 htmlspecialchars_decode() 函数。
语法
htmlspecialchars(string,flags,character-set,double_encode)
参数 | 描述 |
---|---|
string | 必需。规定要转换的字符串。 |
flags |
可选。规定如何处理引号、无效编码以及使用哪种文档类型。 可用的引号类型:
无效编码:
ການກໍານົດ flags ສຳລັບຮູບແບບເອກະສານທີ່ໃຊ້
|
character-set |
ຄຳລົງຄຳນວຍຄວາມ. ຄຳນວຍຄວາມທີ່ກໍານົດຄວາມສະເພາະທີ່ຈະໃຊ້ ຄວາມສະເພາະທີ່ອະນຸຍາດ
ຄວາມຄິດເຫັນ:ໃນຮູບແບບ PHP 5.4 ກ່ອນນັ້ນ ຄວາມສະເພາະທີ່ບໍ່ສາມາດຮັບຮູ້ໄດ້ຈະຖືກທຳລາຍໂດຍ ISO-8859-1. ຕັ້ງແຕ່ PHP 5.4 ຄວາມສະເພາະທີ່ບໍ່ສາມາດຮັບຮູ້ໄດ້ຈະຖືກທຳລາຍໂດຍ UTF-8。 |
double_encode |
ຄຳລົງຄຳນວຍຄວາມ. ບໍ່ມີຄວາມສະເພາະທີ່ບໍ່ມີຄວາມກະຈາຍຄວາມສະເພາະທີ່ມີແຕ່ຢູ່
|
ຂໍ້ມູນດ້ານເຕັກນິກ
ຜົນກະທົບ |
ກັບຄືນຄຳນວຍຄວາມທີ່ໄດ້ປ່ຽນ ຖ້າ string ມີການການວັດແທກຄວາມສະເພາະທີ່ບໍ່ມີຄວາມກະຈາຍຄວາມສະເພາະແລ້ວຈະກັບຄືນເປັນຄຳສັບປະສົມຄຳນວຍຄວາມທີ່ບໍ່ມີຄວາມກະຈາຍຄວາມສະເພາະທີ່ໄດ້ກະຕຸ້ມ ENT_IGNORE ຫຼື ENT_SUBSTITUTE。 |
PHP ຮູບແບບ | 4+ |
ບັນທຶກການປັບປຸງ |
ໃນ PHP 5character-set ຈຸດສະນະຂອງຄຳນວຍຄວາມສະເພາະໄດ້ປ່ຽນເປັນ UTF-8。 ໃນ PHP 5.4 ພະລັງງານໄດ້ຕື່ມ: ENT_SUBSTITUTE、ENT_DISALLOWED、ENT_HTML401、ENT_HTML5、ENT_XML1 ແລະ ENT_XHTML。 ໃນ PHP 5.3 ພະລັງງານໄດ້ຕື່ມ ENT_IGNORE。 ໃນ PHP 5.2.3 ພະລັງງານໄດ້ຕື່ມເພີ່ມ double_encode ປະເພດ ໃນ PHP 4.1, ໄດ້ຕັ້ງມາ character-set ປະເພດ |
ຕົວຢ່າງຫຼາຍກວ່າ
ຕົວຢ່າງ 1
ປ່ຽນການບັນທຶກຄຳວ່າງທີ່ມີການບັນທຶກຄຳວ່າງທີ່ຄວບຄຸມຄຳວ່າງໄດ້ປະກອບເປັນ HTML Entity:
<?php $str = "Bill & 'Steve'"; echo htmlspecialchars($str, ENT_COMPAT); // ປ່ຽນການບັນທຶກຄຳວ່າງທີ່ມີການບັນທຶກຄຳວ່າງ echo "<br>"; echo htmlspecialchars($str, ENT_QUOTES);// ປ່ຽນການບັນທຶກຄຳວ່າງທີ່ມີການບັນທຶກຄຳວ່າງ echo "<br>"; echo htmlspecialchars($str, ENT_NOQUOTES); // ບໍ່ປ່ຽນການບັນທຶກຄຳວ່າງ ?>
ການສະແດງ HTML ຂອງລະບຽບຂັ້ນນີ້ (ກວດກາລະບຽບແຫຼ່ງ):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
ການສະແດງຂອງວິດີໂອຂອງລະບຽບຂັ້ນນີ້:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
ຕົວຢ່າງ 2
ປ່ຽນການບັນທຶກຄຳວ່າງທີ່ມີການບັນທຶກຄຳວ່າງເປັນ HTML Entity:
<?php $str = 'I love "PHP".'; echo htmlspecialchars($str, ENT_QUOTES); // ປ່ຽນການບັນທຶກຄຳວ່າງທີ່ມີການບັນທຶກຄຳວ່າງ ?>
ການສະແດງ HTML ຂອງລະບຽບຂັ້ນນີ້ (ກວດກາລະບຽບແຫຼ່ງ):
<!DOCTYPE html> <html> <body> ຂ້ອຍມັກ "PHP". </body> </html>
ການສະແດງຂອງວິດີໂອຂອງລະບຽບຂັ້ນນີ້:
ຂ້ອຍມັກ "PHP".