我正在尝试使用 Slim 和包illuminate/database
在 php 环境中建立 mysql 连接。按照文档,我创建了一个新的$capsule实例,我通过 addConnection
方法传递了带有连接数据的数组,然后运行了bootEloquent()
方法:
<?php
use IlluminateDatabaseCapsuleManager as Capsule;
$capsule = new Capsule;
$capsule->addConnection([
'driver' => $app->config->get('db.driver'),
'host' => $app->config->get('db.host'),
'database' => $app->config->get('db.database'),
'username' => $app->config->get('db.username'),
'password' => $app->config->get('db.password'),
'charset' => $app->config->get('db.charset'),
'collation' => $app->config->get('db.collation'),
'prefix' => $app->config->get('db.prefix')
]);
#here the output seems correct...
#var_dump($capsule);
$capsule->bootEloquent();
?>
不幸的是,当我运行bootEloquent((时,它经历了一个错误:
解析错误:解析错误 /sites/auth/vendor/illuminate/database/Eloquent/Model.php 在线 597
这个问题似乎与雄辩模型有关。我已经尝试使用不同的版本更新 composer.json 文件。我也再次安装了每个软件包,但解析错误仍然存在。
当前该项目正在运行:PHP 版本 5.6.30。
我当前的作曲家 json 文件包含所有依赖项
{
"autoload": {
"psr-4": {
"Business\": "app/Business"
}
},
"require": {
"slim/slim": "~2.0",
"slim/views": "0.1.*",
"twig/twig": "~1.0",
"phpmailer/phpmailer": "~5.2",
"hassankhan/config": "0.8.*",
"illuminate/database": "~5.0",
"alexgarrett/violin": "2.*",
"ircmaxell/random-lib": "~1.1"
}
}
有人可以解释为什么我会遇到这种奇怪的糟糕情况吗?提前谢谢。
查看您的composer.lock
,看看安装了哪个版本的illuminate/database
。后来的与 PHP 5.6.30 不兼容,但需要 PHP 7。您可以尝试通过"illuminate/database": "~5.4.0"
强制实施该版本约束