Ben SPL ArrayObject genişletmeye çalışıyorum ama biraz pürüz çıktı ettik. Modifiye edilmemiş bir ArrayObject kullanarak, bu kod çalışır:
$a = new ArrayObject();
$a[1][2] = 'abc';
print_r($a);
Bu çıktıyı veren:
ArrayObject Object
(
[storage:ArrayObject:private] => Array
(
[1] => Array
(
[2] => abc
)
)
)
Ben ArrayObject uzatmak ve offsetGet yöntemi aşırı Ancak eğer
class ExtendedArray extends ArrayObject {
function offsetGet($i) {
return parent::offsetGet($i);
}
}
$a = new ExtendedArray();
$a[1][2] = 'abc';
print_r($a);
O zaman bu gibi başarısız olur:
ExtendedArray Object
(
[storage:ArrayObject:private] => Array
(
)
)
Ne çok boyutlu diziler ile benim genişletilmiş sınıf çalışması yapmak sürer?