我使用一个小框架,它的主要对象可用于其子(控制器,模型,视图)
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中使用缩写并使输入短语变短。