Laravel:无法读取配置文件

时间:2013-09-28 11:45:36

标签: php package laravel-4 config configuration-files

我正在开发一个Laravel包,但我无法从服务提供商的register()方法中读取配置文件。

如果我尝试\Config::get("package::file.option")我就会失效, 如果我尝试\Config::get("package::file"),我会得到一个空数组。

尽管如此,我可以从boot()方法中阅读它们。

以下是package()方法和我的文件夹结构中的boot()调用:

// package() call:
$this->package('cerbero/login');

// package directory structure:
/workbench
    /cerbero
        /login
            /src
                /Cerbero
                    /Login
                        LoginServiceProvider.php
                        ...
                /config
                    main.php
                    oauth.php
                    redis.php

1 个答案:

答案 0 :(得分:5)

我无法直接从register()读取配置文件,因为$this->app['config']由其他服务提供商提供。
相反,当我调用绑定方法时,我必须传递一个$app实例。

例如,这有效:

$this->app->bind('Something', function($app) {
    $config = $app['config']->get('package::file.option');
    return new Something($config);
});