codeigniter活动记录,何时转义,如果有的话

Ahm*_*nas 1 activerecord codeigniter escapestring

我刚刚开始使用活动记录(之前我只是编写手动查询,因为我已经习惯了它们).

我正在查看ion_auth的代码,我发现即使使用了活动记录,在某些地方字符串也已被转义,

 ->where($this->identity_column, $this->db->escape_str($identity))
 ->where($this->tables['groups'].'.name', $this->db->escape_str($group))
Run Code Online (Sandbox Code Playgroud)

事实是,我没有逃过任何我使用过活动记录的地方,因为在文档上它表示活动记录会自动转义字符串.

我的问题,当使用活动记录时,是否存在一些应该转义字符串的情况?

cho*_*wwy 5

从Codeigniter用户指南:

除了简单性之外,使用Active Record功能的一个主要好处是它允许您创建独立于数据库的应用程序,因为查询语法是由每个数据库适配器生成的.它还允许更安全的查询,因为系统会自动转义值.

ion_auth的创建者可能已经转义的字符串特别的原因,但如果你使用的是活动记录,笨查询自动转义.

但有些查询"看起来"可能是Active Record,需要进行转义.以下是 Codeigniter用户指南中的列表.