有没有办法在一行中调用类实例的方法?

时间:2012-10-22 01:54:23

标签: php instance

我使用一个小框架,它的主要对象可用于其子(控制器,模型,视图)

mainobject::instance()

框架的Wiki建议添加所需的控制器方法

$mainobject = mainobject::instance()

因此通过单个变量可用于模型。我怀疑这是否非常方便,在每个模型的方法中定义该变量以获得例如全局配置变量。

class MyAnotherModel extends FrameworksModel 
{
    …
    my_method() {
        global $mainobject;
        …
        if ($mainobject->config['something_here'];
        $mainobject->controller->othermodel->othermodelsarray['somestring']; 
    }
}

无论如何,这是一个巨大的字符串,我宁愿更大一点调用一个实例,然后每次写两个字符串。我的意思是,写一下

mainobject::instance->config['goods']
mainobject::instance->controller->othermodel->othermodelsmethodgiveme('power');

但我不知道是否可以实现,因为控制器类不提供将实例作为变量调用。我想有可能通过getter方法...如果有这样的方法。那么如果不重写原始的mainobject类,我该怎么办?

inb4长字符串不方便键入 - 没有问题,因为我可以在emacs中使用缩写并使输入短语变短。

0 个答案:

没有答案