從我所瞭解的情況來看,當代碼足夠深時,對象通常比數組更快,因爲它實際上很重要。該效率有何影響,如果我要強制轉換的飛行定義stdClass
對象:PHP數組轉換爲對象的效率?
$var = (object)array('one' => 1, 'two' => 2);
如果要執行很多很多次這樣做是怎麼回事的代碼,我會變得更好顯式定義$var
作爲對象而不是:
$var = new stdClass();
$var->one = 1;
$var->two = 2;
的區別是可以忽略不計,因爲我會接着出現在訪問$var
爲對象從,無論哪種方式?
編輯:
一個stdClass的是我需要這裏的數據類型。我不關心是否應該使用數組,還是應該使用stdClass對象;我更關心的是,使用(object)array(....)
速記實例化stdClass
是否有效。是的,這是代碼將被執行數千次。
stdClass不是數組的替代品。嘗試使用ArrayObject。 「更快」是相對的,在大多數情況下實際上是不相關的。 – Mchl 2011-01-07 17:40:58