PHP的OOP代码语法,未使用的情况下

我想完成我的代码的语法如下:PHP的OOP代码语法,未使用的情况下

$data = new Data(); 

$user = $data -> user -> get(1);

$product = $data -> product -> get(1);

使用:

class Data { 

public $user = null;

public $product = null;

public $a = null;

...

function __construct() {

this -> user = new User();

this -> product = new Product();

this -> a = new A();

...

}

}

与代码的问题是,我将有数据类中有大量未使用的实例,因为我不会在特定场景中全部使用它们。我怎样才能防止这一点?

回答:

在一个非常基本的层面上,你可以做这样的事情,你为用户属性定义一个getter,并且该对象只在第一次调用时才被实例化。

class Data { 

protected $user = null;

public function user()

{

if ($this->user === null) {

$this->user = new User();

}

return $this->user;

}

}

回答:

你可以使用聚合,这意味着你传递一个对象入类,这样的类越来越null或对象,你通过一次不进行初始化一切节省资源。​​(不是我的)。

它基本上是这样的:

class Test { 

public $a = '';

public function __construct($object) {

$this->a = $object;

}

}

回答:

我会说你可以尝试这样的事:

class ThisOne{ 

protected $user = null;

public function user()

{

if ($this->user === null) {

$this->user = new User();

}

return $this->user;

}

}

吸气只给你一个对象在第一时间就被称为!

以上是 PHP的OOP代码语法,未使用的情况下 的全部内容, 来源链接: utcz.com/qa/264340.html

回到顶部