php - 是否可以在构造函数中优雅地退出?

标签 php constructor return-value

是否可以优雅地退出 PHP 中的构造函数?效果是

class Foo { 

 function __construct()
 {

   $active = false;

   if(!$active)
   {
    return false;
   }

 }

}

我正在尝试完成此操作,因为我想检查类中的任何方法是否应基于配置文件运行。我不想在每个方法中检查配置文件以查看这些方法是否应该运行。

最佳答案

这取决于您所说的“优雅地”是什么意思。如果你想让你的构造函数失败,你可以抛出一个异常,或者你可以使用工厂模式:

class FooFactory {
    function makeFoo() {
        return $someConstraint ? null : new Foo();
    }
}

也许您可以详细说明您想要完成什么。

关于php - 是否可以在构造函数中优雅地退出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/926269/

相关文章:

php - 从包含的文件调用函数?

php - 在数据库 PHP 中搜索日期

c++ - 在基本构造函数中初始化唯一指针的标准容器

javascript - TypeScript 中带有配置对象的构造函数(如 jQuery.extend、Ext.apply)

templates - 如何从 mixin mixin 模板调用构造函数

python - 在 for 循环中返回所有值

php - 如何使用 HTML/CSS 从底部开始滚动对象?

javascript - 用于聊天的 Ajax 用户键入消息

c - isdigit() 和 isalpha() 返回类型 0?或者这里发生了什么。?

javascript - jquery - 从函数返回一个值