[英]Trying to get a config value from a package in laravel returns null
我正在為Laravel 4創建一個程序包,它將有一個配置文件,用戶可以在其中輸入該程序包正在使用的服務的api密鑰。 但是,我在訪問配置值時遇到問題。 每當我嘗試訪問該值時,它總是返回null。 這是我的代碼如下:
這是服務提供商的注冊方法,其中的config值稱為:
public function register()
{
$this->app->bind('Datumbox', function($app){
return new \Carwyn\LaravelDatumbox\Lib\DatumboxAPI(
$this->app['config']->get('laravel-datumbox::api_key')
);
});
}
我遇到的問題是
$this->app['config']->get('laravel-datumbox::api_key')
我從軟件包的src / config目錄中擁有的config.php文件中調用api_key值的部分。
我的配置文件如下:
<?php
return array(
'api_key' => 'apikeyhere',
);
任何幫助將不勝感激。
您的配置文件應位於:
src/config/config.php
並確保您還擁有:
public function boot()
{
$this->package('carwyn/laravel-datumbox');
}
還要注意,Laravel將相對於ServiceProvider文件(它在內部使用__DIR__.'../../'
)尋找配置文件,地雷的路徑與普通路徑不同,所以我必須:
$this->package('pragmarx/glottos', 'pragmarx/glottos', __DIR__.'/../../../..');
而且我在服務提供者中將此方法用作幫助程序,它不使用get
方法,但可能沒有太大區別:
public function getConfig($key)
{
return $this->app['config']["pragmarx/glottos::$key"];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.