Intento descubrir por qué mi env()
ayudante siempre regresa null
. Esto causa problemas, especialmente en el app.php
archivo, donde los env()
ayudantes se utilizan ampliamente de forma predeterminada. ¿Quizás alguna configuración de servidor misteriosa?
Mi archivo env :
APP_ENV=production
APP_KEY=base64:mymagickey=
APP_DEBUG=false
APP_LOG_LEVEL=info
APP_URL=http://www.example.com
etc...
EDITAR - Intenté seguir :
php artisan cache:clear
php artisan view:clear
php artisan config:cache
y por supuesto, estoy usando un env
ayudante como este:env('APP_ENV')
Pero aún sin éxito. La parte extraña es que la $_ENV
variable php contiene todas las variables del .env
archivo.
php artisan config:clear
es lo único que funcionó para que mis credenciales de AWS SES se leyeran.env('APP_ENV')
en nuestra aplicación. En su lugar, debemos escribir una línea enconfig/app.php
:'env' => env('APP_ENV'),
. Entonces, la usamos en nuestro código:config('app.env')
.Espero que este comando te salve
fuente
Los cinco comandos más importantes si su Laravel no funciona como se esperaba después de algunas modificaciones en .env o la carpeta de la base de datos o debido a cualquier otra modificación. Aquí hay una explicación completa: https://www.youtube.com/watch?v=Q1ynDMC8UGg
fuente
php artisan config:cache
no funciona. Después de ejecutarlophp artisan config:clear
funciona. Ahora puedo usar nuevamente env ($ key). Thx @LearnerÚselo en
\Config::get('app.env');
lugar deenv(APP_ENV);
porque eventualmente obtendrá el mismo error y eso no es bueno para un sitio web en vivo.Si desea agregar variables personalizadas desde su ENV, vaya a su aplicación de configuración y busque esto:
/* |-------------------------------------------------------------------------- | Application Environment |-------------------------------------------------------------------------- | | This value determines the "environment" your application is currently | running in. This may determine how you prefer to configure various | services your application utilizes. Set this in your ".env" file. | */ 'env' => env('APP_ENV', 'production'),
agregue una nueva línea debajo de "
'env' => env('APP_ENV', 'production'),
", por ejemplo, podría ser lo siguiente:/* |-------------------------------------------------------------------------- | Application Environment |-------------------------------------------------------------------------- | | This value determines the "environment" your application is currently | running in. This may determine how you prefer to configure various | services your application utilizes. Set this in your ".env" file. | */ 'env' => env('APP_ENV', 'production'), 'key' => env('APP_KEY'),
Puede llamar a la variable "clave" así:
\Config::get('app.key');
Siempre que agregue una nueva variable como "clave" al entorno de la aplicación, deberá usarla
config:cache
para restablecer el caché.fuente
El siguiente comando funcionó para mí. Accidentalmente borré todos los archivos de caché, por
env('something')
lo que devolvía nulo.fuente
Es un error conocido ".env" que se puede solucionar con:
fuente
Si la respuesta aceptada no soluciona el problema, compruebe si el archivo .env tiene el permiso de lectura y escritura correcto. Si el marco / biblioteca no puede leer el archivo, los valores siempre serán nulos. Me encontré con este problema en uno de mis proyectos de Lumen, pero después de cambiar los permisos de archivo funcionó.
fuente
Sé que este es un hilo muy antiguo y la razón puede no ser la misma. Pero a mí me pasó lo mismo.
La razón fue que tuve un problema dentro del archivo .env. Esto es lo que tengo en .env
TEST="e@1asa
Observe que falta la cita final. Y debería ser como,
TEST="e@1asa"
Todas las variables env que agregué después devolvieron nulas debido a este error.
Ni siquiera nada escrito en el registro de errores. Entonces, si se ha encontrado con este error, intente agregar una variable env de ejemplo como primer registro del archivo . Si funciona y el registro finalmente no funciona , puede haber un error dentro de .env
fuente
Coloque el archivo .env en la carpeta raíz del proyecto
Agréguelos al archivo app.php.
try { (new Dotenv\Dotenv(__DIR__.'/../'))->load(); } catch (Dotenv\Exception\InvalidPathException $e) { echo $e; }
fuente