我想创建一个文件.env:
FACEBOOK_CLIENT_ID=*****
FACEBOOK_CLIENT_SECRET=*****
并使用变量进行配置
'facebook' => [
'class' => 'yii\authclient\clients\Facebook',
'clientId' => env('FACEBOOK_CLIENT_ID'),
'clientSecret' => env('FACEBOOK_CLIENT_SECRET'),
],
答案 0 :(得分:5)
答案 1 :(得分:2)
您可以通过使用环境常量对此进行归档。如果在将应用程序初始化为dev或生产时使用Yii2高级,则在index.php条目脚本中将yii_ENV设置为dev或production。
如果您使用的是yii basic,您可以根据您的环境进行设置。例如,我们想为dev。
定义配置我们将继续编辑/web/index.php到
defined('YII_ENV') or define('YII_ENV', 'dev');
然后在我们的配置文件中,我们将有以下
'facebook' => [
'class' => 'dektrium\user\clients\Facebook',
'clientId' => (YII_ENV_DEV ? 'Your key when in developent' : 'Your Key if not in developement'),
'clientSecret' => (YII_ENV_DEV ? 'Your key when in developent' : 'Your Key if not in developement'),
],
有关环境常量 http://www.yiiframework.com/doc-2.0/guide-concept-configurations.html#environment-constants
的更多详情,请参阅此内容答案 2 :(得分:0)
您可以使用Symfony提供的dotenv软件包。 https://symfony.com/doc/current/components/dotenv.html
在PHP文件中使用它。
use Symfony\Component\Dotenv\Dotenv;
$dotenv = new Dotenv();
$dotenv->load(__DIR__.'/.env');
// You can also load several files
$dotenv->load(__DIR__.'/.env', __DIR__.'/.env.dev');
.env文件
DB_USER=root
DB_PASS=pass
从.env文件访问变量
$dbUser = $_ENV['DB_USER'];
// you can also use ``$_SERVER``