PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Monday, March 7, 2022

[FIXED] Undefined variable: _ENV in Laravel 5.3

 March 07, 2022     environment-variables, laravel, laravel-5, php, vendor     No comments   

Issue

I was testing my system with Laravel 5.3:

For past few weeks my system was working fine. Since last weekend, I encountered the same error TWICE as below:-

Notice: Undefined variable: _ENV in C:\NewFolder\htdocs\project\vendor\vlucas\phpdotenv\src\Loader.php on line 303

Warning: array_key_exists() expects parameter 2 to be array, null given in C:\NewFolder\htdocs\project\vendor\vlucas\phpdotenv\src\Loader.php on line 303

Loader.php:

public function getEnvironmentVariable($name)
{
    switch (true) {
        case array_key_exists($name, $_ENV): // line 303 here
            return $_ENV[$name];
        case array_key_exists($name, $_SERVER):
            return $_SERVER[$name];
        default:
            $value = getenv($name);
            return $value === false ? null : $value;
    }
}

.env

APP_ENV=local
APP_KEY=base64:oTU0Ok1mmE6x0qEosGKhCSxpQLAlBAnNreH7sFAKkdM=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=new_db
DB_USERNAME=root
DB_PASSWORD=

BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

PUSHER_KEY=
PUSHER_SECRET=
PUSHER_APP_ID=
  • When the above error appeared on the first time(when I loaded login page), I cleared my browser cache and history, the system managed to back to normal.
  • When the same error appeared on second time(in the mid of testing process), I did the same as first time, cleared browser cache and history, but it could not helped, the error still show after I refreshed my browser. So I executed php artisan view:clear and php artisan cache:clear but still failed to get back to normal.

Anyone have any idea on why is this happening? Thanks

The version I used:

  • OS: Window 7
  • Browser: Mozilla Firefox
  • PHP: 7.1.1
  • Laravel: 5.3

Solution

After some finding and research, I found there are some similar issues from Github #8191.

I able to get rid of the error by running php artisan config:cache. Means that Laravel will read the environment variable from the config file rather than reading the environment variable directly from .env



Answered By - yyii
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing