PHP html_entity_decode() 函數
實例
把 HTML 實體轉換為字符:
<?php $str = "<© W3Sçh°°¦§>"; echo html_entity_decode($str); ?>
以上代碼的 HTML 輸出如下(查看源代碼):
<!DOCTYPE html> <html> <body> <? W3S?h????> </body> </html>
以上代碼的瀏覽器輸出:
<? W3S?h????>
語法
html_entity_decode(string,flags,character-set)
參數 | 描述 |
---|---|
string | 必需。規定要解碼的字符串。 |
flags |
可選。規定如何處理引號以及使用哪種文檔類型。 可用的引號類型:
規定所使用文檔類型的附加 flags:
|
character-set |
可選。字符串值,規定要使用的字符集。 允許的值:
注釋:在 PHP 5.4 之前的版本,無法被識別的字符集將被忽略并由 ISO-8859-1 替代。自 PHP 5.4 起,無法被識別的字符集將被忽略并由 UTF-8 替代。 |
技術細節
返回值: | 返回被轉換的字符串 |
PHP 版本: | 4.3.0+ |
更新日志:
版本 | 說明 |
---|---|
PHP 5 | character-set 參數的默認值改為 UTF-8。 |
PHP 5.4 |
新增了用于規定翻譯表適用的文檔類型的附加 flags:
|
PHP 5.3.4 | 新增了對多字節編碼的支持。 |
更多實例
例子 1
把 HTML 實體轉換為字符:
<?php $str = "Bill & 'Steve'"; echo html_entity_decode($str, ENT_COMPAT); // 只轉換雙引號 echo "<br>"; echo html_entity_decode($str, ENT_QUOTES); // 轉換雙引號和單引號 echo "<br>"; echo html_entity_decode($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 實體轉換為字符:
<?php $str = "My name is Øyvind Åsane. I'm Norwegian."; echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1"); ?>
以上代碼的 HTML 輸出(查看源代碼):
<!DOCTYPE html> <html> <body> My name is ?yvind ?sane. I'm Norwegian. </body> </html>
以上代碼的瀏覽器輸出:
My name is ?yvind ?sane. I'm Norwegian.