我与codeigniter堆叠, 从数据库获取数组值时,我将它发送到解析器,该解析器显示带有数组值的页面,所以问题是html没有显示 怎么做:
< to <
> to >
主要问题是html没有按预期显示
答案 0 :(得分:3)
查看htmlspecialchars PHP函数。
答案 1 :(得分:2)
您可以将输出包装在htmlspecialchars();
函数中,例如:
print htmlspecialchars($content);
答案 2 :(得分:2)
htmlspecialchars
是使用本机PHP的方法,但您也可以使用Codeigniter的html_escape
函数,如下所示:
function html_escape($var)
{
if (is_array($var))
{
return array_map('html_escape', $var);
}
else
{
return htmlspecialchars($var, ENT_QUOTES, config_item('charset'));
}
}
您还可以传入数组,它将转义每个项目。这也适用于您的字符集(应该是UTF-8
)。在PHP 5.4中,默认编码为UTF-8
,但在此之前它是ISO-8859-1
,这意味着每次调用htmlspecialchars
时都必须设置所有3个参数,否则最终可能会如果字符不是默认编码,则为错误的字符串:
$var = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
所以这是一个很好的快捷方式,而且它总是可用的(不需要加载助手)。