我見過這樣的事情在一個ORM:對象表現得像一個數組? (PHP)
$b = new Book();
$b->limit(5)->get();
echo 'ID: ' . $b->id . '<br />';
echo 'Name: ' . $b->title . '<br />';
echo 'Description: ' . $b->description . '<br />';
echo 'Year: ' . $b->year . '<br />';
foreach ($b as $book)
{
echo 'ID: ' . $book->id . '<br />';
echo 'Name: ' . $book->title . '<br />';
echo 'Description: ' . $book->description . '<br />';
echo 'Year: ' . $book->year . '<br />';
echo '<br />';
}
怎麼可能一個對象同時充當數組和對象?我怎麼能做到這一點? 我希望在Book的父類中看到一個新的__magic方法或其他東西,但是我找不到任何東西,所以可能有一些關於php對象的基礎知識,我不知道。
有什麼想法?在此先感謝
愛是愛這個! :) – balupton 2010-09-21 05:56:51
是的,這是我的恩,謝謝! – 2010-09-21 05:59:51
實際上,每個對象都可以用foreach進行清理,但它將訪問所有公共屬性。如果你想改變這種行爲,你需要實現'Iterator'。您可能感興趣的另一個接口是ArrayAccess – Mchl 2010-09-21 06:18:53