php echo html标签所以它是可见的(不解释为代码)

时间:2014-01-23 17:33:37

标签: php html tags echo

我目前正在尝试从包含html样式标记的变量中回显文本值。 < ...>

$string = "variable_name";
$tag_str = "<".$string.">";
echo $tag_str;

目前这个回声并不像它认为它是HTML代码一样。如何将<variable_name>回显到页面,使其可查看,并且不会被浏览器解释为代码?

3 个答案:

答案 0 :(得分:7)

您必须对输出进行html编码

$string = "variable_name";
$tag_str = "<".$string.">";
echo htmlspecialchars($tag_str);

答案 1 :(得分:1)

尖括号(<>)正是告诉浏览器它应该被视为HTML代码的东西。而是输出那些特殊字符的HTML编码版本:

$tag_str = "&lt;".$string."&gt;";

或者,自动执行此过程:

$tag_str = htmlspecialchars("<".$string.">");

答案 2 :(得分:0)

使用highlight_string()。请参阅以下代码

$string = "variable_name";
$tag_str = "<".$string.">";
highlight_string($tag_str);