文档说明:只记录关键地方;
PHP 数据对象(PDO)
PDO 提供了数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数来查询和获取数据
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
try {
$dbh = new PDO($dsn, $user, $password);
# 执行一条预处理语句
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
PDO 预处理用法查询
Doctrine vs Eloquent [DataMapper VS ActiveRecord]
Eloquent采用了Active Record的模式,表映射到类,记录映射到对象。它的特点是简单直观,但解耦方面稍弱。
还有一种叫做Data Mapping(以Doctrine为代表),它对象操作和数据操作是完全分离的
ActiveRecord更加适合快速开发成型的短期简单项目,而DataMapper更加适合长线开发,保持业务逻辑与数据存储独立的复杂项目