Я пытаюсь получить некоторые ключи API, которые я сохранил в моем файле .env, для использования в javascript клинка. Я добавил два ключа, например:
APP_ENV=local
APP_KEY=////
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost
APP_GOOGLE_MAPS=////
APP_OVERHEID_IO=////
В лезвии мне нужно использовать API Карт Google и ключ API OverheidIO. Я попытался получить одну из переменных .env по умолчанию на тот случай, если я неправильно отформатировал пользовательские переменные .env .:
{{ env('APP.ENV') }} // nothing
{{ env('APP_ENV') }} // nothing
{{ env('APP_ENV'), 'test' }} // returns 'test'
Может ли кто-нибудь помочь мне вызвать ключи api карт Google и api overheidio в лезвии?
php artisan config:clear
и протестироватьenv('APP_ENV')
в тинкере. Для меня он возвращаетlocal
строку.php artisan config:clear
сделали свое дело.Ответы:
Пять наиболее важных команд, если ваш Laravel не работает должным образом после некоторых изменений в .env или папке базы данных или из-за любых других изменений. Вот полное объяснение: https://www.youtube.com/watch?v=Q1ynDMC8UGg
источник
php artisan config:cache
а я ее не использую. Пожалуйста прочти.php artisan config:cache
как @Learner упоминает. НО, я не уверен, нужно ли отредактировать ответ Учащегося, чтобы добавить недостающую команду, или вы допустили ошибку. Пожалуйста, проясните.Я реализовал это следующим образом:
@if (env('APP_ENV')!='Production') Enviroment Test @endif
Я рекомендую выполнить следующую команду:
composer self-update
источник
config
вместо@if(App::environment('production'))
ОЧЕНЬ ВАЖНО
Все env () like:
env('APP_ENV')
вызовы НЕ РАБОТАЮТ в продакшене (когда вы используетеphp artisan config:cache
)Что использовать?
- используйте env () только в файлах конфигурации
- используйте App :: environment () для проверки среды (APP_ENV в .env).
- используйте config ('app.var') для всех других переменных env, например. config ('app.debug')
- создавать собственные файлы конфигурации для ваших собственных переменных ENV. Пример:
в вашем .env:
пример config app / myconfig.php
return [ 'myvalue' => env('MY_VALUE', 'bar'), // 'bar' is default if MY_VALUE is missing in .env ];
Доступ в вашем коде:
config('myconfig.myvalue') // will result in 'foo'
Подробнее смотрите ЗДЕСЬ
источник
use env() only in config files
. Это лучший ответ на этот вопрос.Если вы хотите получить среду приложения, попробуйте следующее:
Другие переменные не пробовал.
источник
Это вызывает проблемы с использованием env () где-либо еще, кроме папки config /. Используйте env там, а затем config () в других частях приложения.
источник
Вы должны получать доступ только к
.env
значениям непосредственно внутри файлов конфигурации, а затем обращаться к ним отовсюду (контроллеры, представления) из файлов конфигурации с помощьюconfig()
помощника.Например:
источник
должен исправить это
источник
Вот ссылка на документацию: https://laravel.com/docs/6.x/configuration#retrieving-environment-configuration
В приведенном ниже примере я выплевываю фактическую ошибку, когда нахожусь в своей среде разработки, но выдаю общее сообщение, если в любой другой среде.
@if(App::environment('development')) Error: {{ $record->s_error }} @else XML Parsing Error - Please double check that your file is formatted correctly. @endif
источник
получить значения здесь:
config/app.php
в лезвии:
{{ config('app.name', 'default value here') }}
в классе / контроллере:
config('app.name', 'default value here')
источник
Эта команда должна быть написана после редактирования файла .env для удобного доступа к переменным.
источник
У меня также были проблемы с получением значения из файла .env, тогда я сделал это, и это помогло:
источник
Завидовать можно следующим образом:
@if (env('APP_ENV')!='Production') Enviroment Test @endif
см ссылку
источник
Так Laravel 7.11 , вы можете использовать
@env('')
и@production()
директивы в блейд - шаблонов:@env('staging') // The application is running in "staging"... @endenv @env(['staging', 'production']) // The application is running in "staging" or "production"... @endenv
или
@production // Production specific content... @endproduction
См. Также документацию Laravel Blade .
источник