gpt4 book ai didi

PHP:在构造函数中使用 $this

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:53:33 24 4
gpt4 key购买 nike

我想在 php 中使用这种语法。它说明了创建对象有不同的回退方式

function __construct() {

if(some_case())
$this = method1();
else
$this = method2();

}

这是一场噩梦吗?还是有效?

最佳答案

Or it works?

这是行不通的。您不能取消设置或从根本上改变在构造函数中创建的对象。您也可以不设置返回值。您所能做的就是设置对象的属性。

解决这个问题的一种方法是有一个单独的“工厂”类或函数,它检查条件并返回正确对象的新实例,如下所示:

function factory() {

if(some_case())
return new class1();
else
return new class2();

}

另见:

关于PHP:在构造函数中使用 $this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5043538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com