Mysql 为什么我们不能在CodeIgniter的DB库中使用:key=>value?

Mysql 为什么我们不能在CodeIgniter的DB库中使用:key=>value?,mysql,codeigniter,pdo,Mysql,Codeigniter,Pdo,我曾经在普通PHP的PDO中使用过类似的东西: $data = array( ":name" => "james", ":location" => "Palo Alto, CA" ); SQL: 当我开始使用Codeigniter时,它不再允许我使用名称空间键,它只接受传统的?马克 不管怎样,要解决这个问题?也许在Codeigniter中使用活动记录和执行以下操作会更舒服 $this->db->like(); 请看这里:也许在Codeigniter中使

我曾经在普通PHP的PDO中使用过类似的东西:

$data = array(
    ":name" => "james",
    ":location" => "Palo Alto, CA"
);
SQL:

当我开始使用Codeigniter时,它不再允许我使用名称空间键,它只接受传统的?马克


不管怎样,要解决这个问题?

也许在Codeigniter中使用活动记录和执行以下操作会更舒服

$this->db->like();

请看这里:

也许在Codeigniter中使用活动记录和执行以下操作会更舒服

$this->db->like();

看这里:

不幸的是,没有。与CodeIgniter本机无关

记住CodeIgniter的根代码是PHP4兼容代码,他们做的一些事情甚至不是最新的PHP4-他们使用的自定义文件搜索系统比PHP4.3 4.4使用的glob要慢很多?这是最低要求的版本,这意味着旧的“?”在当时确实是最好的选择


如果您对使用新样式感觉更好,那么使用类可能会更好。无论如何,它们更好更快。坦率地说,我只使用CI的DB类来实现法规遵从性。我非常喜欢PDO,尤其是因为所有现代框架似乎都在使用它们。不过,我要警告您,使用PDO完全使CodeIgniter提供的ActiveRecord框架无效。您将无法使用$this->db->select->from'table'->where$array->limit1,4;更重要的是,您需要了解SQL的不同方言之间的差异,CodeIgniter允许您避免这些差异,并且您的代码不再是DB不可知论。

不幸的是,没有。与CodeIgniter本机无关

记住CodeIgniter的根代码是PHP4兼容代码,他们做的一些事情甚至不是最新的PHP4-他们使用的自定义文件搜索系统比PHP4.3 4.4使用的glob要慢很多?这是最低要求的版本,这意味着旧的“?”在当时确实是最好的选择


如果您对使用新样式感觉更好,那么使用类可能会更好。无论如何,它们更好更快。坦率地说,我只使用CI的DB类来实现法规遵从性。我非常喜欢PDO,尤其是因为所有现代框架似乎都在使用它们。不过,我要警告您,使用PDO完全使CodeIgniter提供的ActiveRecord框架无效。您将无法使用$this->db->select->from'table'->where$array->limit1,4;更重要的是,您需要了解SQL的不同方言之间的差异,CodeIgniter让您避免了这一点,您的代码将不再是DB不可知论。

谢谢Ivan,但对我来说,它让SQL查询无处不在:谢谢Ivan,但对我来说,它让SQL查询无处不在: