>[info]我们选择 Laravel 的 illuminate/database 作为我们的 ORM 包。
`
>[danger]在本系列教程里,每一个 Composer 包都要满足以下基本要求:
原生依赖 Composer 进行管理
在好用的基础上尽量简单(比如我们那个超简单的路由包)
尽量新,用上 PHP 的新特性
## 安装 illuminate/database
给 composer.json 增加一个 require 项:
~~~
"illuminate/database": "*"
~~~
运行 composer update ,等待安装完成。
## 使用 Eloquent
>[info]修改 public/index.php 为:
~~~
<?php
use Illuminate\Database\Capsule\Manager as Capsule;
// Autoload 自动载入
require '../vendor/autoload.php';
// Eloquent ORM
$capsule = new Capsule;
$capsule->addConnection(require '../config/database.php');
$capsule->bootEloquent();
// 路由配置
require '../config/routes.php';
~~~
>[info]新增 config/database.php (注意替换数据库密码):
~~~
<?php
return [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'mffc',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
'collation' => 'utf8_general_ci',
'prefix' => '' // 表前缀
];
~~~
>[info]修改 models/Article.php :
~~~
class Article extends Illuminate\Database\Eloquent\Model
{
public $timestamps = false;
public static function findAll() {
}
}
~~~
此时刷新页面数据依旧正常:
![](https://box.kancloud.cn/bd6b47bdab8882daf310cdb996ee9f43_729x339.png)
Eloquent 使用成功!
Eloquent 更多用法参见:[Eloquent ORM 中文文档](http://d.laravel-china.org/docs/5.4/eloquent)
报错:
~~~
Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in D:\wamp\www\composer-framework\vendor\illuminate\database\Eloquent\Model.php on line 299
~~~
原因是php版本太低,配置php环境应该是php>=5.5