来自__construct中的类的PHP OOP UNSET对象

时间:2014-08-14 11:52:56

标签: php class oop unset construct

我有一些类,我可以从中创建对象。在__construct函数中,我检查属性。如果它们不匹配,我想删除创建的对象。

$example = new example('Value 1', 2, false);


foreach (get_object_vars($this) as $propertie => $value) {
    if (empty($value)) {
        // unset(); What i have to insert in unset() ?  
    }
}

谢谢!

1 个答案:

答案 0 :(得分:1)

您需要取消设置已创建的对象。

不要在构造函数中执行此操作,在您创建obj的位置执行此操作。

集中此代码可以做的是构建Factory。你可以告诉那个工厂,你想要一个example类型的obj,并将这些属性设置为val1, val2, val3...

然后工厂将运行下面的代码并返回obj,如果一切正常,如果不是,你可以发出一个错误信息,解释出了什么问题,比如属性没有设置或什么的。然后你就可以对它作出适当的反应。

$example = new example('Value 1', 2, false);

foreach (get_object_vars($example) as $propertie => $value) {
    if (empty($value)) {
        unset($exampe);
        break; //This stops the foreach
    }
}