Definisi dan Penggunaan
Fungsi htmlentities()
digunakan untuk dapat mengubah karakter menjadi entitas HTML.
Tip: Untuk mengubah entitas HTML kembali menjadi karakter, gunakan fungsi html_entity_decode()
.
Tip: Gunakan fungsi get_html_translation_table()
untuk mengembalikan tabel terjemahan yang digunakan oleh htmlentities ()
.
Syntax
htmlentities(string,flags,character-set,double_encode)
Nilai Parameter
Parameter | Deskripsi |
---|---|
string | Required. Menentukan string yang akan diubah |
flags | Optional.Menentukan bagaimana menangani kutipan, pengkodean yang tidak valid dan tipe dokumen yang digunakan. Gaya kutipan yang tersedia adalah: ENT_COMPAT – Default. Mengkodekan hanya tanda kutip ganda ENT_QUOTES – Mengkodekan tanda kutip ganda dan tunggal ENT_NOQUOTES – Tidak menyandikan tanda kutip apa pun Enkode tidak valid: ENT_IGNORE – Mengabaikan pengkodean yang tidak valid alih-alih membuat fungsi mengembalikan string kosong. Harus dihindari, karena mungkin memiliki implikasi keamanan. ENT_SUBSTITUTE – Mengganti pengkodean yang tidak valid untuk kumpulan karakter tertentu dengan Karakter Pengganti Unicode U + FFFD (UTF-8) atau & # FFFD; bukannya mengembalikan string kosong. ENT_DISALLOWED – Mengganti poin kode yang tidak valid di doctype yang ditentukan dengan Unicode Replacement Character U + FFFD (UTF-8) atau & # FFFD; Flag tambahan untuk menentukan doctype yang digunakan: ENT_HTML401 – Default. Tangani kode sebagai HTML 4.01 ENT_HTML5 – Menangani kode sebagai HTML 5 ENT_XML1 – Menangani kode sebagai XML 1 ENT_XHTML – Menangani kode sebagai XHTML |
character-set | Optional.String yang menentukan kumpulan karakter mana yang akan digunakan. Nilai yang diperbolehkan adalah: UTF-8 – Default. Unicode 8-bit multi-byte yang kompatibel dengan ASCII ISO-8859-1 – Eropa Barat ISO-8859-15 – Eropa Barat (menambahkan tanda Euro + huruf Prancis dan Finlandia tidak ada dalam ISO-8859-1) cp866 – rangkaian karakter Cyrillic khusus DOS cp1251 – rangkaian karakter Cyrillic khusus Windows cp1252 – charset khusus Windows untuk Eropa Barat KOI8-R – Rusia BIG5 – Bahasa Cina Tradisional, terutama digunakan di Taiwan GB2312 – Cina Sederhana, kumpulan karakter standar nasional BIG5-HKSCS – Big5 dengan ekstensi Hong Kong Shift_JIS – Jepang EUC-JP – Jepang MacRoman – Karakter-set yang digunakan oleh Mac OS Catatan: Kumpulan karakter yang tidak dikenali akan diabaikan dan diganti dengan ISO-8859-1 dalam versi sebelum PHP 5.4. Mulai PHP 5.4, itu akan diabaikan dan digantikan oleh UTF-8. |
double_encode | Optional. Nilai boolean yang menentukan apakah akan mengenkode entitas html yang ada atau tidak. TRUE – Default. Akan mengubah segalanya FALSE – Tidak akan menyandikan entitas html yang ada |
Detail Teknis
Return Value: | Mengembalikan string yang dikonversi. Namun, jika parameter string berisi encoding yang tidak valid, itu akan mengembalikan string kosong, kecuali jika flag ENT_IGNORE atau ENT_SUBSTITUTE disetel |
---|---|
PHP Version: | 4+ |
Changelog: | PHP 5.6 – Mengubah nilai default untuk parameter set karakter ke nilai charset default (dalam konfigurasi). PHP 5.4 – Mengubah nilai default untuk parameter set karakter ke UTF-8. PHP 5.4 – Menambahkan ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 dan ENT_XHTML PHP 5.3 – Menambahkan konstanta ENT_IGNORE. PHP 5.2.3 – Menambahkan parameter double_encode. PHP 4.1 – Menambahkan parameter set karakter. |
Contoh 1
Ubah beberapa karakter menjadi entitas HTML:
<?php $str = '<a href="https://www.w3schools.com">Go to w3schools.com</a>'; echo htmlentities($str); ?> /* Output : HTML Output : <a href="https://www.w3schools.com">Go to w3schools.com</a> Browser Output : <a href="https://www.w3schools.com">Go to w3schools.com</a>
Contoh 2
Ubah beberapa karakter menjadi entitas HTML:
<?php $str = "Albert Einstein mengatakan: 'E=MC²'"; echo html_entity_decode($str, ENT_COMPAT); // Hanya akan mengubah tanda kutip ganda echo "<br>"; echo html_entity_decode($str, ENT_QUOTES); // Mengonversi tanda kutip ganda dan tunggal echo "<br>"; echo html_entity_decode($str, ENT_NOQUOTES); // Tidak mengubah kutipan apa pun ?> /* Output : Output HTML (View Source): Albert Einstein mengatakan: 'E=MC²'<br> Albert Einstein mengatakan: 'E=MC²'<br> Albert Einstein mengatakan: 'E=MC²' Output browser : Albert Einstein mengatakan: 'E=MC²' Albert Einstein mengatakan: 'E=MC²' Albert Einstein mengatakan: 'E=MC²'
Contoh 3
Ubah beberapa karakter menjadi entitas HTML menggunakan himpunan karakter Eropa Barat:
<?php $str = "Nama saya Øyvind Åsane. Saya orang Norwegia."; echo html_entity_decode($str, ENT_QUOTES, "UTF-8"); ?> /* Output : Output HTML (View Source): Nama saya Øyvind Åsane. Saya orang Norwegia. Output browser : Nama saya Øyvind Åsane. Saya orang Norwegia.