在laravel 框架核心代码的 illuminate/database包中,有一个 capsule目录, 该目录下有一个 manager.php文件,如果要在 laravel 之外使用 illuminate database 组件,就要通过该文件实现。以yii2 为例,我们首先在项目根目录下运行使用如下 composer 命令安装该依赖包:
composer require illuminate/database ~5.1
这样在 vendor目录下现在就有了 illuminate/database包,接下来我们修改入口文件 index.php如下:
run();
然后我们到项目根目录下创建 system/eloquent/start.php,编辑文件内容如下:
'mysql', 'host' => db_host, 'database' => db_name, 'username' => db_user, 'password' => db_password, 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => db_tableprefix,];use illuminate\container\container;use illuminate\database\capsule\manager as capsule;$capsule = new capsule;// 创建链接$capsule->addconnection($database);// 设置全局静态可访问$capsule->setasglobal();// 启动eloquent$capsule->booteloquent();
最后,我们可以到 models目录下创建模型类如下:
这样我们就可以在代码中以 eloquent 模型类的语法使用 user 模型了。关于 eloquent orm 的使用方法,可参考eloquent orm 文档。