2015-12-11 3 views
0

В моем файле config/app.php я добавил некоторую переменную, и я использовал эту переменную в своем контроллере и просмотрел файлы. Ниже приведены переменные:Переопределить переменную Config в Laravel 5.1

'META_TITLE' => 'title' 
'META_KEYWORDS' => 'keyword' 
'META_DESCRIPTION' => 'description' 

и я использовал эти переменные как этот Config::get("app.META_TITLE")

Но я хочу, чтобы переопределить эти переменные в любом из моего контроллера в соответствии с требованием.

ответ

1

Это звучит как простая проверка, чтобы проверить, нужно ли переопределять значение.

В контроллере:

$title = Config::get("app.META_TITLE"); 

if ($titleOverrideValue) { 
    $title = $titleOverrideValue; 
} 

Или поставить его в более короткий путь:

$title = $titleOverrideValue ?: Config::get("app.META_TITLE"); 
0

Laravel сохраняет все значения файла конфигурации в одном массиве. Таким образом, «Laravel путь» перезаписывать переменные конфигурации после того, как они установлены, чтобы изменить массив, в котором они хранятся:

config([ 

    // overwriting values set in config/app.php 
    'app.META_TITLE'  => 'new meta title', 
    'app.META_KEYWORDS' => 'new meta keywords', 
    'app.META_DESCRIPTION' => 'new meta description', 

    // in case you would like to overwrite values inside config/services.php 
    'services.facebook.client_id'  => 'client id', 
    'services.facebook.client_secret' => 'client secret', 

]); 

С помощью этой концепции можно редактировать любой набор переменных в любом конфигурационном файле - просто указать какой файл конфигурации они хранятся.