php – Yii2在运行时设置数据库连接

在我的Yii2(基本应用程序)web.PHP中,我将NULL数据库连接配置为第二个数据库连接.

这需要填充来自主数据库连接上的记录的有效参数:

'db' => require(__DIR__ . '/db.PHP'),
'db2' => [
    'class' => 'yii\db\Connection',
    'dsn' => NULL,
    'username' => NULL,
    'password' => NULL,
    'charset' => 'utf8',
],

在初始化app()之后,我需要使用从另一个数据库检索的值来填充NULL参数,以便在模型中进一步使用它.

我怎样才能在Yii2中实现这一目标?

解决方法:

没问题,它是支持

\Yii::$app->db2->close(); // make sure it clean
\Yii::$app->db2->dsn= 'yourdsn';
\Yii::$app->db2->username = 'username';
\Yii::$app->db2->password = 'password';

完成,现在你可以使用它

Yii::$app->db2->...

其他方式:

$connection = new \yii\db\Connection([
    'dsn' => $dsn,
    'username' => $username,
    'password' => $password,
]);
$connection->open();
$command = $connection->createCommand('SELECT * FROM post')->....;

参见:http://www.yiiframework.com/doc-2.0/yii-db-connection.html

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...