【问题标题】:Dynamically execute method on std class php在std类php上动态执行方法
【发布时间】:2016-12-28 08:03:20
【问题描述】:
Class::method()->method();

如果变量满足条件,如何对对象执行第三种方法?我需要在较短的版本中使用它:

if($a == $b) {
        Class::method()->method()->disabled();
    } else {
        Class::method()->method();
    }

【问题讨论】:

    标签: php class methods


    【解决方案1】:

    不是很短,但可能更容易阅读:

    $c = Class::method()->method();
    
    if($a == $b) {
        $c->disabled();
    }
    

    (您不必重复Class::method()->method() 两次)

    【讨论】:

    • 好吧,我想知道也许有这样的东西: Class::method()->method()(if($a == $b) { ->disable() });
    • 我觉得读起来不容易。一种奇怪的方法:Class::method()->method()->disableIf($a == $b); 呢?
    猜你喜欢
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 2012-03-16
    • 2014-07-12
    • 1970-01-01
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    相关资源
    最近更新 更多