<?php
class ArrayObjectChild extends ArrayObject {
public function offsetExists($offset) {
var_dump('Called: '.__METHOD__);
return parent::offsetExists($offset);
}
public function offsetGet($offset) {
var_dump('Called: '.__METHOD__);
return parent::offsetGet($offset);
}
}
$array = array('foo' => '');
echo "ArrayObject: empty string is set, but empty:\n";
$object = new ArrayObject($array);
var_dump(isset($object['foo']), empty($object['foo']), $object->offsetExists('foo'), $object->offsetGet('foo'), $object['foo']);
echo "ArrayObject extended: empty string is set, but not empty\n";
$object = new ArrayObjectChild($array);
var_dump(isset($object['foo']), empty($object['foo']), $object->offsetExists('foo'), $object->offsetGet('foo'), $object['foo']);
preferences:
42.8 ms | 402 KiB | 5 Q