2016-12-25 33 views
0

我有一個配置變量文件,我正在使用它在我的控制器而不是mysql中以獲得更快的性能。如何添加和更新laravel中的配置變量

但我的問題是,我只能從這個配置文件讀取,我不能添加或更新它的任何值。

任何建議如何更新或添加新值這個變量文件:

我的變量文件存儲在/config/Banners_size.php

return [ 
    "normal_x970h90" => [ 
     'status' => 'enable', 
     'value' => '500' 
    ], 

    "normal_x234h60" => [ 
     'status' => 'enable', 
     'value' => '500' 
    ], 
] 

我的PHP代碼到新陣列添加到它這是不working:

$banners = Config('Banners_size'); 
    $banner = array(
     $request->input('size') => [ 
      'status' => $request->input('status'), 
      'value' => $request->input('cost') 
     ] 
    ); 

    $bannerinfo = array_merge($banners, $banner); 

    Config('Banners_size' , $bannerinfo); 

回答

1

配置文件是隻讀文件,您不能以編程方式向其添加參數。

$banners = config('Banners_size'); 

config('Banners_size' , $bannerinfo); 

上面兩行,將作用是相同的,並且都將返回的Banner_size值。

+0

所以有沒有辦法寫入這個文件? –

+0

只能通過將實際值寫入文件來完成此操作。換句話說,在數組中追加新值,而不是在運行時。 –

+0

你的意思是我可以手動編輯它們嗎?不是編程式的? –

1

要在運行時設置的配置值,傳遞數組到配置助手:

config(['app.timezone' => 'America/Chicago']); 

注 - 不會存留的數據的下一個請求

Docs

相關問題