2017-04-25 21 views
6

tôi cần phải hỏi câu hỏi ngu ngốc nhưng câu hỏi của tôi để truy cập .env biến bên trong nó tự không phải từ php:Làm thế nào để truy cập các biến các laravel .env bên trong bản thân

Nếu tôi có .env tập tin cho larvel5.4 và tôi có APP_URL như thế này:

APP_ENV=local 
APP_KEY=base64:7qLJMqTxrAPk+tLJscVlmrzf2H16tAfbSoCZuleCkxQ= 
APP_DEBUG=true 
APP_LOG_LEVEL=debug 
APP_URL=http://localhost 

và tôi có biến đa cấu hình sử dụng liên kết miền như thế này:

#Facebook 

FACEBOOK_LOGIN_URL=http://localhost:8000/en/portal/facebook_login 
FACEBOOK_CALLBACK_URL=http://localhost:8000/en/portal/facebook_callback 

#Twitter 

TWITTER_LOGIN_URL=http://localhost:8000/en/portal/twitter_login 
TWITTER_CALLBACK_URL=http://localhost:8000/en/portal/twitter_callback 

#Google 

GOOGLE_LOGIN_URL=http://localhost:8000/en/portal/google_login 
GOOGLE_CALLBACK_URL=http://localhost:8000/en/portal/google_callback 

là có cách để truy cập APP_URL i n cùng một tệp như sau:

FACEBOOK_LOGIN_URL= APP_URL /en/portal/facebook_login 

Xin vui lòng tôi là thành viên mới không cho tôi trừ đi câu hỏi này.

Cảm ơn tất cả các bạn

+0

Tôi nghĩ rằng nó giống như tệp txt, vì vậy không có gì động, bất cứ điều gì bạn chỉ định sẽ là tĩnh. – rahulsm

+0

Có thể trùng lặp của [Laravel 4: làm thế nào tôi có thể nhận được giá trị môi trường?] (Http://stackoverflow.com/questions/14935846/laravel-4-how-can-i-get-the-environment-value) –

+0

i nghĩ rằng quá, nhưng khi bạn tạo nhà soạn nhạc, nhà soạn nhạc đọc nó như một tập tin mã như không có khoảng trống hoặc biến mất .. bởi vì tôi đang tự hỏi liệu có cách nào để đối phó với tệp này .. cảm ơn câu trả lời của bạn –

Trả lời

3

Không có cách nào để làm điều đó bạn chỉ cần để giữ cho mọi thứ đơn giản, trong khi truy cập các biến ENV bạn có thể dễ dàng làm như sau:

tập tin Env:

APP_URL=http://localhost:8000 
FACEBOOK_LOGIN_URL=/en/portal/facebook_login 
FACEBOOK_CALLBACK_URL=/en/portal/facebook_callback 

trong Laravel:

env('APP_URL') . env('FACEBOOK_LOGIN_URL'); 
0

Bạn có thể xác định liên tục trong app/config/constant.ph p

define('FACEBOOK_LOGIN_URL','http://localhost:8000/en/portal/facebook_login'); 
define('FACEBOOK_CALLBACK_URL','http://localhost:8000/en/portal/facebook_callback'); 

echo FACEBOOK_LOGIN_URL; 

Và cứ thế cho các url khác, tôi hy vọng nó sẽ giải quyết được vấn đề của bạn!

+0

cảm ơn bạn đã trả lời của bạn nó phải outsude tập tin .env nhưng tôi cần nó bên trong tập tin .env –

0

bạn có thể đặt biến như:

Config :: set ('site.name', 'www.example.co')

0

Trong khi câu trả lời khác là chính xác về việc sử dụng các biến lưu trữ trong .env. Tôi nghĩ rằng nó sẽ là gọn gàng hơn, nếu bạn làm như sau:

url(env('FACEBOOK_LOGIN_URL')) 

hay:

url(env('FACEBOOK_CALLBACK_URL')) 

url() sử dụng APP_URL do đó bạn không cần phải nối .env biến của bạn.

Các vấn đề liên quan