Fungsi html_entity_decode() PHP

Contoh

Konversi HTML entity ke karakter:

<?php
$str = "<© W3Sçh°°¦§>";
echo html_entity_decode($str);
?>

Output HTML kode di atas seperti ini (lihat kode asli):

<!DOCTYPE html>
<html>
<body>
<? W3S?h????>
</body>
</html>

Output Penjelajah Kode di atas:

<? W3S?h????>

Definisi dan Penggunaan

Fungsi html_entity_decode() mengkonversi entitas HTML ke karakter.

Fungsi html_entity_decode() adalah htmlentities() Fungsi yang bertentangan.

Sintaks

html_entity_decode(string,flags,character-set)
Parameter Deskripsi
string Diperlukan. Menentukan string yang harus diurai.
flags

Pilihan. Menentukan cara pengelolaan kutip dan jenis dokumen yang digunakan.

Jenis kutip yang tersedia:

  • ENT_COMPAT - Standar. Hanya mengurai tanda kutip ganda.
  • ENT_QUOTES - Mengurai tanda kutip ganda dan tunggal.
  • ENT_NOQUOTES - Tidak mengurai apapun tanda kutip.

Flag tambahan untuk menentukan jenis dokumen yang digunakan:

  • ENT_HTML401 - Standar. Diproses sebagai HTML 4.01.
  • ENT_HTML5 - Diproses sebagai HTML 5.
  • ENT_XML1 - Diproses sebagai XML 1.
  • ENT_XHTML - Diproses sebagai XHTML.
character-set

Pilihan. Nilai string yang menentukan set karakter yang digunakan.

Nilai yang diizinkan:

  • UTF-8 - Standar. ASCII yang kompatibel dengan Unicode 8-bit multi-byte
  • ISO-8859-1 - Eropa
  • ISO-8859-15 - Eropa (menambahkan simbol euro + huruf Perancis dan Finlandia yang hilang di ISO-8859-1)
  • cp866 - Set karakter Cyrillic khusus DOS
  • cp1251 - Set karakter Cyrillic khusus Windows
  • cp1252 - Set karakter Eropa khusus Windows
  • KOI8-R - Bahasa Rusia
  • BIG5 - Tionghwa Babah, digunakan utamanya di Taiwan
  • GB2312 - Tionghwa Sederhana, set karakter standar negara
  • BIG5-HKSCS - Big5 dengan ekspansi Hong Kong
  • Shift_JIS - Bahasa Jepang
  • EUC-JP - Bahasa Jepang
  • MacRoman - Set karakter yang digunakan sistem operasi Mac

Komentar:Pada versi PHP sebelum 5.4, karakter yang tak dapat diidentifikasi akan diabaikan dan digantikan dengan ISO-8859-1. Dari PHP 5.4, karakter yang tak dapat diidentifikasi akan diabaikan dan digantikan dengan UTF-8.

Detil teknis

Kembalikan nilai: Kembalikan string yang telah diubah
Versi PHP: 4.3.0+

Log pembaruan:

Versi Keterangan
PHP 5 character-set Nilai default parameter diubah menjadi UTF-8.
PHP 5.4

Baru ditambahkan flag tambahan untuk menentukan jenis dokumen yang berlaku untuk tabel penerjemahan:

  • ENT_HTML401
  • ENT_HTML5
  • ENT_XML1
  • ENT_XHTML
PHP 5.3.4 Menambahkan dukungan untuk pengkodean multi-byte.

Contoh Lebih Banyak

Contoh 1

Konversi HTML entity ke karakter:

<?php
$str = "Bill & 'Steve'";
echo html_entity_decode($str, ENT_COMPAT); // Hanya mengkonversi tanda kutip ganda
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // Mengkonversi tanda kutip ganda dan tunggal
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // Tidak mengkonversi apapun tanda kutip
?>

Output HTML Kode di atas (lihat kode asli):

<!DOCTYPE html>
<html>
<body>
Bill & 'Steve'<br>
Bill & 'Steve'<br>
Bill & 'Steve'
</body>
</html>

Output Penjelajah Kode di atas:

Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'

Contoh 2

Menggunakan charset Eropa Barat, konversi HTML entity ke karakter:

<?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1");
?>

Output HTML Kode di atas (lihat kode asli):

<!DOCTYPE html>
<html>
<body>
Nama saya adalah ?yvind ?sane. Saya Norwegia.
</body>
</html>

Output Penjelajah Kode di atas:

Nama saya adalah ?yvind ?sane. Saya Norwegia.