PHP htmlspecialchars() Fungsi
Contoh
Ubah karakter standar "<" (kurang dari) dan ">" (lebih besar dari) ke entitas HTML:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
Output HTML dari kode di atas adalah (Lihat Sumber):
<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
Output browser dari kode di atas adalah:
This is some <b>bold</b> text.
Definisi dan Penggunaan
Fungsi htmlspecialchars() mengonversi beberapa karakter yang telah ditentukan sebelumnya menjadi entitas HTML.
Karakter yang sudah ditentukan sebelumnya adalah:
- & (ampersand) menjadi &
- " (kutipan ganda) menjadi "
- ' (kutipan tunggal) menjadi '
- < (kurang dari) menjadi <
- > (lebih besar dari) menjadi >
Tip: Untuk mengonversi entitas HTML khusus kembali ke karakter, gunakan fungsi htmlspecialchars_decode() .
Sintaksis
htmlspecialchars(string,flags,character-set,double_encode)
Nilai Parameter
Parameter | Description |
---|---|
string | Required. Specifies the string to convert |
flags | Optional. Specifies how to handle quotes, invalid encoding and the used document type. The available quote styles are:
Invalid encoding:
Additional flags for specifying the used doctype:
|
character-set | Optional. A string that specifies which character-set to use. Allowed values are:
Note: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8. |
double_encode | Optional. A boolean value that specifies whether to encode existing html entities or not.
|
Detail Teknis
Nilai Kembali: | Mengembalikan string yang dikonversi Jika string berisi penyandian yang tidak valid, string tersebut akan mengembalikan string kosong, kecuali jika flag ENT_IGNORE atau ENT_SUBSTITUTE disetel |
---|---|
Versi PHP: | 4+ |
Catatan perubahan: | PHP 5.6 - Mengubah nilai default untuk parameter set karakter
ke nilai set karakter default (dalam konfigurasi). PHP 5.4 - Mengubah nilai default untuk parameter set karakter menjadi 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 . |
Lebih Banyak Contoh
Contoh
Konversi beberapa karakter yang telah ditentukan sebelumnya menjadi entitas HTML:
<?php
$str = "Jane & 'Tarzan'";
echo htmlspecialchars($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // Does not convert any quotes
?>
Output HTML dari kode di atas adalah (Lihat Sumber):
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
Output browser dari kode di atas adalah:
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Contoh
Konversi tanda kutip ganda ke entitas HTML:
<?php
$str = 'I love "PHP".';
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
?>
Output HTML dari kode di atas adalah (Lihat Sumber):
<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>
Output browser dari kode di atas adalah:
I love "PHP".
Referensi String PHP