2024-12-02

如何手动调用PHP构造函数?

如何手动调用php构造函数?

php 构造函数手动调用

php 构造函数会在创建类对象时自动调用。然而,有时可能需要手动调用它,本文将介绍如何实现。

方法 1:绕过自动调用

在构造对象时,无法阻止构造函数的自动调用。因此,如果需要延迟执行某些操作,可以将其移至其他方法。建议使用 init() 方法。

立即学习PHP免费学习笔记(深入)”;

示例代码:

class test {
    public function __construct($param1, $param2, $param3) {
        echo $param1.$param2.$param3;
    }
}

$ob = new test('p1', 'p2', 'p3');
登录后复制

方法 2:子类化并覆盖

可以通过子类化原始类并覆盖其构造函数来阻止构造函数被自动调用。子类化后的构造函数不执行任何操作。

示例代码:

class SubTest extends Test {
    public function __construct() {
        // 不调用父类的构造函数
    }

    public function init($param1, $param2, $param3) {
        parent::__construct($param1, $param2, $param3);
    }
}

$ob = new SubTest();
$ob->init('p1', 'p2', 'p3');
登录后复制

注意,此方法仅在无法更改原始代码且需要纠正其构造函数不当行为时使用。

以上就是如何手动调用PHP构造函数?的详细内容,更多请关注php中文网其它相关文章!

https://www.php.cn/faq/1123556.html

发表回复

Your email address will not be published. Required fields are marked *