我使用codeigniter堆栈,当从数据库获取数组值时,我将其发送到解析器,解析器将显示包含数组值的页面,所以问题是html没有显示如何做到这一点:
< to <
> to >主要问题是html没有按预期显示它。
发布于 2012-05-12 02:33:53
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)。在PHP5.4中,默认编码是UTF-8,但在此之前它是ISO-8859-1,这意味着每次调用htmlspecialchars时都必须设置所有3个参数,否则如果字符串中包含的字符不是默认编码,则可能会导致字符串损坏:
$var = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');所以这是一个很好的捷径,而且它总是可用的(不需要加载助手)。
https://stackoverflow.com/questions/10555218
复制相似问题