Latest web development tutorials

PHP htmlspecialchars_decode() 函數

PHP String 參考手冊 PHP String參考手冊

實例

把預定義的HTML 實體"<"(小於)和">"(大於)轉換為字符:

<?php
$str = "This is some &lt;b&gt;bold&lt;/b&gt; text.";
echo htmlspecialchars_decode($str);
?>

上面代碼的HTML 輸出如下(查看源代碼):

<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>

上面代碼的瀏覽器輸出如下:

This is some bold text.


定義和用法

htmlspecialchars_decode() 函數把一些預定義的HTML 實體轉換為字符。

會被解碼的HTML 實體是:

  • &amp; 解碼成& (和號)
  • &quot; 解碼成" (雙引號)
  • ' 解碼成' (單引號)
  • &lt; 解碼成< (小於)
  • &gt; 解碼成> (大於)

htmlspecialchars_decode()函數是htmlspecialchars()函數的反函數。


語法

htmlspecialchars_decode( string,flags )

参数 描述
string 必需。规定要解码的字符串。
flags 可选。规定如何处理引号以及使用哪种文档类型。

可用的引号类型:

  • ENT_COMPAT - 默认。仅解码双引号。
  • ENT_QUOTES - 解码双引号和单引号。
  • ENT_NOQUOTES - 不解码任何引号。

规定使用的文档类型的附加 flags:

  • ENT_HTML401 - 默认。作为 HTML 4.01 处理代码。
  • ENT_HTML5 - 作为 HTML 5 处理代码。
  • ENT_XML1 - 作为 XML 1 处理代码。
  • ENT_XHTML - 作为 XHTML 处理代码。

技術細節

返回值: 返回已轉換的字符串。
PHP 版本: 5.1.0+
更新日誌: 在PHP 5.4 中,新增了用於規定使用的文檔類型的附加flags:ENT_HTML401、ENT_HTML5、ENT_XML1 和ENT_XHTML。


更多實例

實例1

把一些預定義的HTML 實體轉換為字符:

<?php
$str = "Jane &amp; 'Tarzan'";
echo htmlspecialchars_decode($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlspecialchars_decode($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlspecialchars_decode($str, ENT_NOQUOTES); // Does not convert any quotes
?>

上面代碼的HTML 輸出如下(查看源代碼):

<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>

上面代碼的瀏覽器輸出如下:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'


實例2

把預定義HTML 實體轉換為雙引號:

<?php
$str = 'I love &quot;PHP&quot;.';
echo htmlspecialchars_decode($str, ENT_QUOTES); // Converts double and single quotes
?>

上面代碼的HTML 輸出如下(查看源代碼):

<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>

上面代碼的瀏覽器輸出如下:

I love "PHP".



PHP String 參考手冊 PHP String參考手冊