Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中使用htmlentities()函数时防止浏览以呈现HTML_Php_Html - Fatal编程技术网

在PHP中使用htmlentities()函数时防止浏览以呈现HTML

在PHP中使用htmlentities()函数时防止浏览以呈现HTML,php,html,Php,Html,我想在浏览器上显示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 Outpu

我想在浏览器上显示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>";
$str=“引号”为粗体”;
//预期输出:A“报价”为b旧/b
回显“.htmlentities($str)。”;
//预期产出:A和#039;报价';是b本票/b
echo“.htmlentities($str,entu引号)。”;
显然,它给了我

我的

请告知。

双倍逃逸

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

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

BalusC的解决方案将起作用,或者您可以只编写希望显示的字符串,并继续使用
htmlentities
仅一次:

    $str = "A 'quote' is &lt;b&gt;bold&lt;/b&gt;";

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

    // Expected Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
    // Actual Output   : A 'quote' is &lt;b&gt;bold&lt;/b&gt;
$str=“A‘quote’是b本币/b”;
回显“.htmlentities($str)。”;
//预期输出:A“报价”为b旧/b
//实际输出:A“报价”为b旧/b