我想實現一個像數組一樣的對象。它應該以這種方式使用:是否可以在PHP中實現類似數組的對象?
$var = new CustomCollection(retrieveFromWebService());
echo $var[0]; // legal
$var[0] = 'a'; // illegal
這可以使用魔術方法或其他機制在PHP中完成嗎?
我想實現一個像數組一樣的對象。它應該以這種方式使用:是否可以在PHP中實現類似數組的對象?
$var = new CustomCollection(retrieveFromWebService());
echo $var[0]; // legal
$var[0] = 'a'; // illegal
這可以使用魔術方法或其他機制在PHP中完成嗎?
你的CustomCollection
類將需要實現內置的ArrayAccess
interface。
參見:http://code.google.com/p/phpraise/source/browse/trunk/phpraise/core/collection/RaiseCollection.php
我覺得ArrayAccess是你在找什麼。
[PHP對象像數組]可能重複(http://stackoverflow.com/questions/2007695/php-object-like-array) – 2011-03-14 14:31:33
@Felix:哎呀,對,對不起。 – pyon 2011-03-14 14:33:28