对于一个项目,我有一些对象,一种方法是加载父实体。
所以我调用这样的方法: $这 - > getDetails() - > getEntity();
所以getEntity的代码是:
public function getEntity()
{
if (isset($this->entity)) {
return $this->entity;
} else {
$mapper = new Crm_Mapper_Entity();
return $this->entity = $mapper->find($this->customerId);
}
}
是否有必要将实体加载到属性中?因为当我想将它加载到另一个地方时,它不应该再次调用映射器。
或者是在加载时,对象已经在内存中了,我不需要将它放入属性中吗?
由于
答案 0 :(得分:0)
使用像这样的单例模式:
class MyStatic{
private static $instance;
private __construct(){}
public static getInstance(){
if (!empty(MyStatic::$instance;)) {
return MyStatic::$instance;
} else {
$mapper = new Crm_Mapper_Entity();
$thisMyStatic::$instance = $mapper->find($this->customerId);
return $thisMyStatic::$instance;
}
}
}