【问题标题】:In Codeigniter 4, how to display database name and table prefix?在 Codeigniter 4 中,如何显示数据库名称和表前缀?
【发布时间】:2020-08-04 10:38:13
【问题描述】:

到目前为止,在 codeigniter 3 中,我们可以从以下代码行中获取数据库名称和表前缀 (如 config/database.php 中所述)

echo $this->db->database;
echo $this->db->dbprefix('emp_table');

现在我们如何在 Codeigniter 4 中调用这些值?

【问题讨论】:

    标签: php codeigniter codeigniter-4


    【解决方案1】:

    CI4内部控制器的构造函数有一些变化,

    写:

    $db = \Config\Database::connect();
    define('production',$db->database);
    

    在你的函数内部调用它:

    echo(production);
    

    永远不要在 CI4 中将数据库作为函数 () 调用,避免使用此 (),而只使用对象:没有 () 的数据库

    【讨论】:

      【解决方案2】:

      我认为在 Codeigniter 4.0.1 中这就是您要寻找的东西

      
      $db = \Config\Database::connect();
      $Database = $db->database();
      $DBPrefix = $db->getPrefix();
      
      

      我希望这对你有用

      【讨论】:

      • 我面临的另一个问题。如何在控制器和模型中全局使用$db = \Config\Database::connect();
      • @RohitGusain 不需要 $db = \Config\Database::connect();在您的模型中,因为模型已经与数据库连接。我认为这个 ci4 文档将帮助您更多地解决这个问题 codeigniter4.github.io/userguide/models/model.html 然后在控制器 $this->db = \Config\Database::connect(); 在 baseController iniController 方法中然后将其他控制器扩展到它。这是如果您不想在控制器中使用模型
      猜你喜欢
      • 2013-10-18
      • 1970-01-01
      • 2019-05-29
      • 1970-01-01
      • 2017-06-12
      • 1970-01-01
      • 2013-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多