php - 将 mysqli 传递给类以供函数使用

标签 php oop constructor mysqli

可能被问过很多次了,但我很顽固。

我有以下类来管理 MySQL 数据库。

class blog {        
    function show ($mysqli) {
    // Code working on $mysqli here
    }
}

由于我将在此类的许多函数中使用 $mysqli,所以我读到我可以创建构造函数,以便将 $mysqli 变量传递给类并在每个函数内部使用它,这样我就可以执行以下操作:

$blog = new blog($mysqli);
$blog -> show();

这可能吗?

最佳答案

这称为Dependency injection .

只需在类中使用一个字段$mysqli,并在构造函数中初始化它,然后通过$this->mysqli使用它:

class blog {  
    private $mysqli;

    function __construct(mysqli $mysqli) {
        $this->mysqli = $mysqli;
    }

    function show () {
        // Code working on $this->mysqli here
    }
}

关于php - 将 mysqli 传递给类以供函数使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14803727/

相关文章:

c# - 管理引用计数和对象生命周期的模式

c++ - 带模板参数的函数调用

c++ - 如何提供许多构造函数,但又没有太多依赖?

php - 分组和总分 - 对此有什么想法吗?

php - 未从 Android POST 接收 PHP 参数

vb.net - Dim c 作为 MyClass 和 Dim c 作为新 MyClass

javascript - 在创建对象时,JavaScript 中调用对象成员函数的正确方法是什么?

flutter - 在构造函数中调用异步函数

php - 使用脚本转换表中的列值

javascript - 使用该邮件功能附加一个文件。那可能吗?