强制文本而不是HTML

时间:2010-09-06 12:08:08

标签: php html webforms textbox

我遇到了以下问题:我有一个页面,用户在textarea中插入文本,然后在另一个页面(php)中输出该textarea的内容。

如果用户决定插入,例如输入type =“text”name =“_ name”(不能使用<和>或文本不显示,这正是我的问题)那么在显示时输出我将显示一个文本框。我想强制显示文字。谢谢。

2 个答案:

答案 0 :(得分:3)

如果要输出一些特殊的HTML字符,可以使用函数htmlspecialchars()

$textarea = '<input type="text" />';
echo htmlspecialchars($textarea);

这会输出&lt;input type=&quot;text&quot; /&rt;
它将被浏览器正确呈现为<input type="text" />

答案 1 :(得分:1)

使用htmlspecialchars()将特殊HTML字符编码为其HTML实体(尤其是<&lt;&&amp;。)

示例:

<?php
echo "Pi is <4"; // HTML syntax error, '<' needs to be encoded properly
echo htmlspecialchars("Pi is <4"); // Ok, outputs 'Pi is &lt;4', which is proper HTML