Codeigniter在将数据存储在会话中之前清理数据

时间:2013-07-22 19:39:53

标签: codeigniter session

我在一个应用程序中使用Codeigniter,该应用程序从SQL服务器获取数据并显示它。为了节省性能,我将查询结果存储在用户的会话中。我遇到的问题是,即使将查询对象强制转换为数组,数据上也会有符号和/或隐藏字符,这些符号和/或隐藏字符不允许我将其存储在会话中。

我设法将有问题的字段向下钻取到2个文本字段,甚至在应用多个过滤器时,例如htmlentities,htmlspecialchars,trim,n2br,addslashes等,似乎还有其他字符会破坏会话对象。

我错过了什么?

注意:如果我从查询中删除文本字段,其他所有内容都会存储在会话中而不会出现任何问题。我没有将会话存储在数据库中。

1 个答案:

答案 0 :(得分:0)

尝试使用公共函数html_escape($mixed)转义这些字符。它根据您在配置中指定的字符集转义字符。您可以阅读有关它的更多信息in the user guide或阅读来源(Common.php);目前,在第642行。