2015-12-14 160 views
9

環境價值在我.ENV文件我有以下幾點:獲取控制器

IMAP_HOSTNAME_TEST=imap.gmail.com 
[email protected] 
IMAP_PASSWORD_TEST=mypw 

現在我想在我的控制器使用它們。我試過,但沒有結果:

$hostname = config('IMAP_HOSTNAME_TEST'); 

的$主機變量等於空。我如何在控制器中使用這些配置變量?

+1

可能重複[Lara vel 4:我怎樣才能獲得環境價值?](http://stackoverflow.com/questions/14935846/laravel-4-how-can-i-get-the-environment-value) –

回答

18

嘗試與

<?php $hostname = env("IMAP_HOSTNAME_TEST", "somedefaultvalue"); ?> 
+0

'somedefaultvalue'可以是任何如果'env'不存在,則使用默認值。 –

-2

可能是沒有關係的,但它可能會幫助別人....在Laravel只是DD(配置( 'app.env')); ,你會看到「本地」或「生產」

0

你可以使用這種格式,在我來說,我用於獲取數據庫連接的數據和控制器使用(上Laravel 5.5測試):

$User = env('DB_USERNAMEchild',''); 
$Pass = env('DB_PASSWORDchild',''); 

第二個參數可以爲null,或者在DB_USERNAMEchild爲null的情況下設置任何默認值。

你.ENV文件可以是相同的:

DB_HOST=localhost 
DB_DATABASE=FATHERBD 
DB_USERNAME=root 
DB_PASSWORD=password 

DB_DATABASEchild=ZTEST 
DB_USERNAMEchild=root 
DB_PASSWORDchild=passwordofchild 
1

InController

$hostname = $_ENV['IMAP_HOSTNAME_TEST']; (or) $hostname = env('IMAP_HOSTNAME_TEST'); 

在blade.view

{{$_ENV['IMAP_HOSTNAME_TEST']}} 
-1

不中Laravel工作5.3+,如果你想嘗試從控制器訪問值象下面這樣,它總是返回空

<?php 

$value=env('MY_VALUE','default_value'); 

SOLUTION:而你需要創建配置文件夾..say values.php然後 寫像下面

值代碼。PHP

<?php 

return [ 

    'myvalue' => env('MY_VALUE',null), 

    //add other values as you want 

] 

然後在你的控制器用下面的代碼

<?php 


$value=\Config::get('credentials.myvalue') 

其中 「資格證書」 是文件名,然後在關鍵的 「myvalue的」 希望它能訪問該值幫助