htmlentities()

PHP htmlentities() funksiyasi

❮ PHP string funksiyalari ma’lumotnomasi

Misol

Ayrim belgilarni HTML entity’larga aylantiring:

<?php $str = '<a href="https://www.w3schools.com">Go to w3schools.com</a>'; echo htmlentities($str); ?>

Yuqoridagi kodning HTML natijasi quyidagicha bo‘ladi (sahifa manba kodi):

&lt;a href=&quot;https://www.w3schools.com&quot;&gt;Go to w3schools.com&lt;/a&gt;

Yuqoridagi kodning brauzerdagi natijasi quyidagicha bo‘ladi:

<a href="https://www.w3schools.com">Go to w3schools.com</a>
O‘zingiz sinab ko‘ring »

ULASHISH

Ta’rif va qo‘llanilishi

htmlentities() funksiyasi belgilarni HTML entity’larga aylantiradi.

Maslahat: HTML entity’larni qaytadan belgilarga aylantirish uchun html_entity_decode() funksiyasidan foydalaning.

Maslahat: htmlentities() ishlatadigan tarjima jadvalini qaytarish uchun get_html_translation_table() funksiyasidan foydalaning.


Sintaksis

htmlentities(string,flags,encoding,double_encode)

Parametr qiymatlari

Parametr Tavsif
string Majburiy. Aylantiriladigan stringni belgilaydi
flags Ixtiyoriy. Tirnoqlar, yaroqsiz kodlash va ishlatiladigan hujjat turi qanday qayta ishlanishini belgilaydi.

Mavjud tirnoq uslublari:

  • ENT_COMPAT - Faqat qo‘sh tirnoqlarni kodlaydi
  • ENT_QUOTES - Standart. Qo‘sh va bittalik tirnoqlarni kodlaydi
  • ENT_NOQUOTES - Hech qanday tirnoqni kodlamaydi

Yaroqsiz kodlash:

  • ENT_IGNORE - Funksiya bo‘sh string qaytarishi o‘rniga yaroqsiz kodlashni e’tiborsiz qoldiradi. Undan foydalanmaslik kerak, chunki bu xavfsizlikka ta’sir qilishi mumkin.
  • ENT_SUBSTITUTE - Ko‘rsatilgan belgilar to‘plami uchun yaroqsiz kodlashni bo‘sh string qaytarish o‘rniga Unicode almashtirish belgisi U+FFFD (UTF-8) yoki &#FFFD; bilan almashtiradi.
  • ENT_DISALLOWED - Ko‘rsatilgan doctype’da yaroqsiz bo‘lgan kod nuqtalarini (code points) Unicode almashtirish belgisi U+FFFD (UTF-8) yoki &#FFFD; bilan almashtiradi

Ishlatiladigan doctype’ni belgilovchi qo‘shimcha bayroqlar:

  • ENT_HTML401 - Standart. Kodni HTML 4.01 sifatida qayta ishlaydi
  • ENT_HTML5 - Kodni HTML 5 sifatida qayta ishlaydi
  • ENT_XML1 - Kodni XML 1 sifatida qayta ishlaydi
  • ENT_XHTML - Kodni XHTML sifatida qayta ishlaydi
encoding Ixtiyoriy. Qaysi belgilar to‘plamidan foydalanishni belgilovchi string.

Ruxsat etilgan qiymatlar:

  • UTF-8 - Standart. ASCII bilan mos, ko‘p baytli 8 bitli Unicode
  • ISO-8859-1 - G‘arbiy Yevropa
  • ISO-8859-15 - G‘arbiy Yevropa (ISO-8859-1 da mavjud bo‘lmagan Yevro belgisi hamda fransuz va fin harflarini qo‘shadi)
  • cp866 - DOS’ga xos kirill belgilar to‘plami
  • cp1251 - Windows’ga xos kirill belgilar to‘plami
  • cp1252 - G‘arbiy Yevropa uchun Windows’ga xos belgilar to‘plami
  • KOI8-R - Rus
  • BIG5 - An’anaviy xitoy, asosan Tayvanda ishlatiladi
  • GB2312 - Soddalashtirilgan xitoy, milliy standart belgilar to‘plami
  • BIG5-HKSCS - Gonkong kengaytmalari bilan Big5
  • Shift_JIS - Yapon
  • EUC-JP - Yapon
  • MacRoman - Mac OS da ishlatilgan belgilar to‘plami
double_encode Ixtiyoriy. Mavjud HTML entity’larni kodlash yoki kodlamaslikni belgilovchi boolean qiymat.
  • TRUE - Standart. Hammasini aylantiradi
  • FALSE - Mavjud HTML entity’larni kodlamaydi


Texnik tafsilotlar

Qaytariladigan qiymat: Kodlangan stringni qaytaradi. Biroq agar string parametrida yaroqsiz kodlash bo‘lsa va ENT_IGNORE yoki ENT_SUBSTITUTE bayroqlaridan hech biri o‘rnatilmagan bo‘lsa, bo‘sh string qaytaradi
PHP versiyasi: 4+
O‘zgarishlar tarixi: PHP 8.0 - encoding endi null bo‘lishi mumkin

Ko‘proq misollar

Misol

Ayrim belgilarni HTML entity’larga aylantiring:

<?php $str = "Albert Einstein said: 'E=MC²'"; echo htmlentities($str, ENT_COMPAT); // Will only convert double quotes echo "<br>"; echo htmlentities($str, ENT_QUOTES); // Converts double and single quotes echo "<br>"; echo htmlentities($str, ENT_NOQUOTES); // Does not convert any quotes ?>

Yuqoridagi kodning HTML natijasi quyidagicha bo‘ladi (sahifa manba kodi):

Albert Einstein said: 'E=MC&sup2;'<br> Albert Einstein said: &#039;E=MC&sup2;&#039;<br> Albert Einstein said: 'E=MC&sup2;'

Yuqoridagi kodning brauzerdagi natijasi quyidagicha bo‘ladi:

Albert Einstein said: 'E=MC²' Albert Einstein said: 'E=MC²' Albert Einstein said: 'E=MC²'
O‘zingiz sinab ko‘ring »

Misol

G‘arbiy Yevropa belgilar to‘plamidan foydalanib, ayrim belgilarni HTML entity’larga aylantiring:

<?php $str = "My name is Øyvind Åsane. I'm Norwegian."; echo htmlentities($str, ENT_QUOTES, "UTF-8"); // Will only convert double quotes (not single quotes), and uses the character-set Western European ?>

Yuqoridagi kodning HTML natijasi quyidagicha bo‘ladi (sahifa manba kodi):

<!DOCTYPE html> <html> <body> My name is &Oslash;yvind &Aring;sane. I&#039;m Norwegian. </body> </html>

Yuqoridagi kodning brauzerdagi natijasi quyidagicha bo‘ladi:

My name is Øyvind Åsane. I'm Norwegian.
O‘zingiz sinab ko‘ring »

❮ PHP string funksiyalari ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!