我最近正在开展laravel项目。这个项目需要一个数据库:安装该软件时会提供其配置数据,并将其保存在位于根目录下的sw-config.json中,如composer.json文件......
现在我希望laravel database.php使用此文件中的数据。
我以为我可以简单地让php通过file_get_content()
加载json文件并直接在app / config / database.php中设置数据
但不知道为什么它不起作用...我在加载和解码json文件时遇到了麻烦。代码看起来像这样。
$fokusConfigFile = file_get_contents(__DIR__."/../../content/sw-config.json");
$json = json_decode($fokusConfigFile, true);
$database = $json['database'];
$connection = array(
'mysql' => array(
'driver' => 'mysql',
'host' => $database['host'],
'database' => $database['database'],
'username' => $database['username'],
'password' => $database['password'],
'charset' => 'utf8',
'collation' => $database['coalition'],
'prefix' => $database['prefix'],
)
);
作为错误消息,我收到未定义的索引'host'...看不出有什么问题。
答案 0 :(得分:0)
像@ceejayoz所说:var_dump()
或print_r()
$database
变量来检查它。我能想到的是JSON返回一个对象,因此你需要通过
$database->host