¿Alguien tiene problemas con las variables env? Por alguna razón, el ayudante env('VARIABLE') devuelve null cada vez que lo uso. Sucedió muy inesperadamente y realmente no sé la razón. Reiniciar el equipo apache / IDE / no funciona.

13
wujt 21 mar. 2017 a las 21:19

2 respuestas

La mejor respuesta

La solución es simple, pero ni IDE ni el depurador dicen nada al respecto. Simplemente devuelve null. Cuando usa php artisan config:cache, de acuerdo con la documentación:

Si ejecuta el comando php artisan config:cache durante su proceso de implementación, debe asegurarse de que solo está llamando a la función env() desde dentro de sus archivos de configuración.

Obviamente tengo env variables fuera de los archivos de configuración, así que después del almacenamiento en caché ya no pude usarlo afuera. El php artisan config:clear lo vuelve a poner en funcionamiento.

Lo que he encontrado más sobre el uso de env es que debe usarse solo en los archivos de configuración. Puede acceder a las variables env desde el resto del proyecto utilizando otro método auxiliar config(). Asegúrese de asignarlo a otra clave en el archivo de configuración, p. 'key' => env('CACHE_DRIVER')

Además, debe recordar ejecutar php artisan config:cache cada vez que cambie el archivo .env. Laravel no cargará los nuevos valores, hasta que esté en caché. Si no está en caché, no es necesario hacerlo.

29
wujt 23 jun. 2018 a las 21:44

Ejecuta los de mando

composer dump-autoload
php artisan cache:clear
php artisan config:clear
php artisan view:clear

Ahora intenta leer

$value = env('VARIABLE_NAME');

Si no funciona hasta ahora, entonces

Pruebe otra sintaxis para leer la variable env.

$value=getenv('VARIABLE_NAME');
20
Majbah Habib 6 jul. 2017 a las 09:04