Codeigniter DB类与预处理语句

Und*_*e2k 4 php mysql mysqli pdo codeigniter

嗨,我想知道使用Codeigniters活动记录类是否等同于在安全问题方面使用预准备语句?

<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);

// insert one row
$name = 'one';
$value = 1;
$stmt->execute();

?>
Run Code Online (Sandbox Code Playgroud)

 $data = array(
   'title' => 'My title' ,
   'name' => 'My Name' ,
   'date' => 'My date'
);

$this->db->insert('mytable', $data); 

// Produces: INSERT INTO mytable (title, name, date) VALUES ('My title', 'My name', 'My date')
Run Code Online (Sandbox Code Playgroud)

Moh*_*agy 5

CI不支持预准备语句,但它确实支持Query Bindings.查询绑定和预准备语句都会阻止sql注入.但我更喜欢AR因为易用性.它还使查询更具可读性.

您可以查看此链接以获取更多详细信息.

并从此链接检查CI查询绑定