我正在使用PDO將行提取到對象。 我有兩個問題:使用ORM時的PHP性能和內存
1-在對象中使用私有屬性並使用可能調用另一個函數本身的__get()方法返回它們,例如getLabel(),它在檢索大量記錄時如何影響PHP性能?可以接受嗎?
一個例子:
class model
{
private p1;
public p2;
function __get($name)
{
return $this->{'get'.$name}();
}
function getP1()
{
return '';
}
}
$obj = new model;
$obj->p1 VS. $obj->p2
2 - 對於多列,定義在類定義所有列的類,然後選擇其中的一些檢索大量的記錄時,如何會影響到PHP的內存使用它們是在具有空值的對象中定義的?可以接受嗎?
我不是一次一個取一行,也不是一次取一行。
一個例子:
class model
{
public $p1 = null;
public $p2 = null;
public $p3 = null;
public $p4 = null;
public $p5 = null;
public $p6 = null;
public $p7 = null;
public $p8 = null;
public $p9 = null;
public $p10 = null;
}
sql: select p1, p2 from model limit 100
每個對象具有8個未使用屬性。這如何影響PHP的性能和內存?
儘管我知道教義使用這兩種模式。他們如何克服這種影響PHP性能?