我想在浏览器上显示PHP echo语句的输出。结果是输出
htmlentities()PHP函数。

$str = "A 'quote' is <b>bold</b>";
// Expected Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo "<textarea>".htmlentities($str)."</textarea>";
// Expected Outputs: A &#039;quote&#039; is &lt;b&gt;bold&lt;/b&gt;
echo "<textarea>".htmlentities($str, ENT_QUOTES)."</textarea>";

显然,它给了我
A 'quote' is <b>bold</b>在我的<textarea>
请告知。

最佳答案

双重逃脱。

echo "<textarea>".htmlentities(htmlentities($str))."</textarea>";

htmlentities()的目的是防止按原样解析HTML。但实际上您希望按原样显示HTML实体,因此需要依次重新转义它们。

关于php - 在PHP中使用htmlentities()函数时,禁止浏览呈现HTML,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3848664/

10-13 01:41