我是面向对象的 PHP 新手。在教程中,讲师不直接使用 PDO 类,而是通过函数使用它,就像这样
class Database{
private $pdo;
private $stmt;
public function __construct(){$this->pdo = new PDO(blaa..blaa..);}
public function preparequery($query){$this->stmt=$this->pdo->prepare($query);}
public function bind($param,$value){$this->stmt->bindValue($param,$value);}
public function execute(){$this->stmt->execute();}
public function Fetch(){$this->stmt->fetchall();}
}
然后他为任何数据库查询调用这些公共(public)函数,例如
$mysql = new Database;
$mysql->preparequery("INSERT INTO test(name,city) VALUES (:name,:city)");
$mysql->bind(':name',$_GET['name']);
$mysql->bind(':city',$_GET['city']);
$mysql->execute();
我明白了,但是我们可以直接创建一个 PDO 对象并与数据库交互,所以我只想问一下,上面的方法是否提供了一些好处(比如更多的安全性或其他东西)或者只是为了让它变得简单(虽然我觉得这并不简单)。
最佳答案
更安全不是重点,但更方便。
Making use of the OOP (data modeling; methods, class, inheritance, etc.) concept as in seen in PDO helps ease and accelerate future edits as it makes one code dry.
它将帮助您有效地构建结构并减少编写。
请注意:上面所说的OOP严格指的是它的概念;不使用任何给定的包装类。
PDO 是 PHP 的 OOP 方法。
关于php - 直接使用 PDO 类是否更安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39545908/