gpt4 book ai didi

构造函数

转载 作者:可可西里 更新时间:2023-11-01 00:38:37 27 4
gpt4 key购买 nike

public function __construct($input = null) {
if (empty($input)){
return false;
}

然后是一些构造函数代码...

如果我传递一个空变量,我想做的是让类不初始化

$classinstance = new myClass();我希望 $classinstance 为空(或假)

我认为这是不可能的,有什么简单的方法可以实现类似的结果?

最佳答案

您可以将普通构造函数设为私有(private)(因此它不能从对象外部使用,就像您创建 Singleton 一样)并创建一个 Factory Method .

class MyClass {
private function __construct($input) {
// do normal stuff here
}
public static function factory($input = null) {
if (empty($input)){
return null;
} else {
return new MyClass($input);
}
}
}

然后你会像这样实例化一个类:

$myClass = MyClass::factory($theInput);

(编辑:现在假设您只尝试支持 PHP5)

关于构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1647072/

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