Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
laravel是否在config\database.php中使用.env而不使用config?_Php_Laravel - Fatal编程技术网

laravel是否在config\database.php中使用.env而不使用config?

laravel是否在config\database.php中使用.env而不使用config?,php,laravel,Php,Laravel,我在学拉威尔。我新创建了一个项目并尝试创建模型,我设置了db config database.php并输入了php artisan migrate,但出现了一条错误消息 C:\xampp\htdocs\l1\blog>php artisan migrate [PDOException] SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (usin g password: YES) 我

我在学拉威尔。我新创建了一个项目并尝试创建模型,我设置了db config database.php并输入了php artisan migrate,但出现了一条错误消息

C:\xampp\htdocs\l1\blog>php artisan migrate


  [PDOException]
  SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (usin
  g password: YES)

我看到它正在使用.env config,但在我的config.php中没有使用config,为什么?

您可以更改.env文件以适应您的数据库配置设置,如下所示

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
根据数据库连接更改这些键的值。并将它们放在.env文件中

重新启动服务器一次,然后继续

另一方面,您可以直接将这些值放在database.php文件中,方法是用单引号或双引号中的直接值替换env('DB_USERNAME')、env('DB_PASSWORD'),如下所示

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
database.php文件中实际存在的代码可以如下

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],

您只需将这些值替换为上述值即可。

您可以更改.env文件以适合您的数据库配置设置,如下所示

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
根据数据库连接更改这些键的值。并将它们放在.env文件中

重新启动服务器一次,然后继续

另一方面,您可以直接将这些值放在database.php文件中,方法是用单引号或双引号中的直接值替换env('DB_USERNAME')、env('DB_PASSWORD'),如下所示

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
database.php文件中实际存在的代码可以如下

DB_HOST=localhost
DB_MAIN=MYDB
DB_USERNAME=root
DB_PASSWORD=root
 'main' => [
        'driver'    => 'mysql',
        'host'      =>  '',
        'database'  =>  'mydb',
        'username'  => 'root',
        'password'  => 'root123',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],
      'main' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_MAIN', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
    ],

您只需将这些值替换为上述值。

使用默认设置,
.env
中的设置(以某种方式)覆盖配置文件中的设置。使用
.env
文件(不要与之抗争:)使用默认设置,
.env
中的设置(以某种方式)覆盖配置文件中的设置。利用
.env
文件不要与之抗争:)