如何在 Laravel 5.6 中使用 .env 中的值

Mik*_*son 5 php laravel-5

嗨?我刚刚学习使用 Laravel 框架,但在理解如何使用存储在.env文件中的值时遇到了麻烦。我已经使用创建了一个模板应用程序artisan并且它可以工作。在默认的欢迎刀片中是代码

<div class="title m-b-md">
     Laravel <--/*this text needs to change */
</div>
Run Code Online (Sandbox Code Playgroud)

文件中.env有以下几行:

APP_NAME=SomeAppName
APP_ENV=local
APP_KEY=base64:zUm/qFNKTV4gRw6bFcIdOfm5rTzrS8JP1bj2KIz8Rl4=
APP_DEBUG=true
APP_URL=http://localhost
Run Code Online (Sandbox Code Playgroud)

我如何引用该.env文件,以便欢迎页面显示APP_NAME("SomeAppName") 而不是 "Laravel" 的值?

ps 已经尝试过{{ getenv('APP_NAME') }}{{ config('app.name', 'SomeAppName') }}但前者给出空白,后者仍然打印出“Laravel”

Nik*_*shi 10

上面的@stan 和@yash 似乎都部分正确。

请按照以下链接:

  1. https://laracasts.com/discuss/channels/laravel/printing-env-variables-in-view
  2. 在刀片中访问 Laravel .env 变量

根据上面你需要做的是如下

<div class="title m-b-md">
      {{ env('APP_NAME') }}
</div>
Run Code Online (Sandbox Code Playgroud)

然后从控制台您需要清除缓存。

php artisan config:clear
php artisan cache:clear
composer dump-autoload
Run Code Online (Sandbox Code Playgroud)

这应该对你有用。


小智 8

<div class="title m-b-md">
     {{ env('APP_NAME') }}
</div>
Run Code Online (Sandbox Code Playgroud)

如果您正在运行本地环境服务器。首先,您重新启动本地环境服务器并尝试此操作。

如果您启用了配置缓存,请运行以下命令

php artisan config:clear

php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)

  • @Mikedavison 它应该是`php artisan config:clear and cache:clear`,因为上面的命令会给出这个错误**“clear”命名空间中没有定义任何命令。** (2认同)

Sta*_*ows 3

在 Blade 中你可以这样做:

{{ env('APP_URL')
Run Code Online (Sandbox Code Playgroud)

在控制器或 PHP 类中:

env('APP_URL')
Run Code Online (Sandbox Code Playgroud)