【问题标题】:Global Variable to store password for postgres connection in PHP web application用于在 PHP Web 应用程序中存储 postgres 连接密码的全局变量
【发布时间】:2017-02-09 04:33:33
【问题描述】:

我在连接到postgres database 的netbeans 中有一个yii2 框架php 项目。 在 config 文件夹中有一个名为 db.php 的文件,其中包含 db 凭据。

在一些文件(被控制器调用)中有pg_connect()连接到数据库,所以每次部署项目,数据库的密码不同,需要更改@987654325的密码@ 在所有这些文件中,有没有办法使用db.php 作为密码或使用全局变量来存储密码。

【问题讨论】:

  • 在您的 db 文件中创建连接对象本身,然后将其包含到其他文件中。这样,您只需在您的数据库文件中进行更改即可。不知道被Yii诽谤好不好?
  • 您的意思是在 db.file 中创建 pg_connect() 并使用 require_once 调用它?
  • 是的,完全正确。仅在文件中创建连接,然后将该连接对象传递给其他文件
  • db.php 是您需要数据库凭据的唯一文件。如果您手动调用方法来连接到数据库,那么您做错了 - 这就是 db 组件的用途。

标签: php database postgresql yii yii2


【解决方案1】:

查看\common\config\main.php\common\config\main.php 了解全局配置

'components' => [
  'db' => [
    'class' => 'yii\db\Connection',
    'dsn' => 'pgsql:host=localhost;dbname=db_name', 
    'username' => 'db_username',
    'password' => 'db_password',
    'charset' => 'utf8',
    'schemaMap' => [
      'pgsql'=> [
        'class'=>'yii\db\pgsql\Schema',
        'defaultSchema' => 'public' //specify your schema here
      ]
    ], // PostgreSQL
],

【讨论】:

    猜你喜欢
    • 2012-04-11
    • 2011-09-21
    • 2015-05-26
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-19
    • 2021-07-14
    相关资源
    最近更新 更多