有时候本地项目和线上项目需要不同的配置文件,这样就用到了.env文件。

1.首先在你的项目根文件夹下创建.env文件

并写入内容

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_DATABASE=test
DB_USERNAME=root
DB_PASSWORD='123456'
DB_PORT=3306
DB_CHARSET=utf8
DB_PREFIX=tb_

2.使用composer安装vlucas/phpdotenv扩展

composer require vlucas/phpdotenv

3.在项目中的数据库配置文件的地方使用此扩展

当然首先你要在index.php或者其他地方引入composer

<?php
//加载环境变量,__DIR__ 可以理解为.env所在的文件夹目录
$dotenv = \Dotenv\Dotenv::create(__DIR__);
$dotenv->load();

$config = [
    // 数据库类型
    'type' => getenv('DB_CONNECTION'),
    // 服务器地址
    'hostname' => getenv('DB_HOST'),
    // 数据库名
    'database' => getenv('DB_DATABASE'),
    // 用户名
    'username' => getenv('DB_USERNAME'),
    // 密码
    'password' => getenv('DB_PASSWORD'),
    // 端口
    'hostport' => getenv('DB_PORT'),
    // 数据库编码默认采用utf8
    'charset' => getenv('DB_CHARSET'),
    // 数据库表前缀
    'prefix' => getenv('DB_PREFIX'),
];
return $config;

4.将.env假如svn或者git的忽略文件,在不同的项目创建不同的.env文件。

php使用生成器读取超大文件

<?php function getLines($file) { $f = fopen($file, 'r'); try { while ($line = fgets($f)) { yield $line; ...

阅读全文

php获取字符串里面的图片,xpath方式

代码 <?php $html = <<<str <html> <head> <title>123</title> </head> <body> <img src=&quo...

阅读全文

Thinkphp5 in查询结果按照in里面的顺序排

或许有人会注意过,但我以前真不知道 SQL: select * from table where id IN (3,6,9,1,2,5,8,7); 这样的情况取出来后,其实,id还是按1,2,3,4,5,6,7,8,9,排序...

阅读全文

欢迎留言