@ 2014-05-07T03:56:57Z <?php
class MyStuff extends ArrayObject {
function offsetGet($offset) {
echo "Called";
return parent::offsetGet($offset);
}
}
$array = array(
'foo' => 42,
'baz' => null,
);
$array_object = new MyStuff($array);
// existing key, non-null value:
var_dump(isset($array['foo'])); //true
var_dump(empty($array['foo'])); //false
var_dump(isset($array_object['foo'])); //true
var_dump(empty($array_object['foo'])); //false
// non-existing key:
var_dump(isset($array['bar'])); //false
var_dump(empty($array['bar'])); //true
var_dump(isset($array_object['bar'])); //true
var_dump(empty($array_object['bar'])); //false
// key where value is null:
var_dump(isset($array['baz'])); //false
var_dump(empty($array['baz'])); //true
var_dump(isset($array_object['baz'])); //true
var_dump(empty($array_object['baz'])); //false
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 8.1.0 - 8.1.27 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.6 Deprecated: Return type of MyStuff::offsetGet($offset) should either be compatible with ArrayObject::offsetGet(mixed $key): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/rU77c on line 4
bool(true)
bool(false)
bool(true)
Calledbool(false)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
Calledbool(true)
Output for 5.6.0 - 5.6.28 , 7.0.0 - 7.0.20 , 7.1.0 - 7.1.33 , 7.2.0 - 7.2.33 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 bool(true)
bool(false)
bool(true)
Calledbool(false)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
Calledbool(true)
Output for 5.3.11 - 5.3.29 , 5.4.1 - 5.4.45 , 5.5.0 - 5.5.37 bool(true)
bool(false)
bool(true)
bool(false)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
Output for 5.2.1 - 5.2.17 , 5.3.0 - 5.3.10 , 5.4.0 bool(true)
bool(false)
bool(true)
bool(false)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
bool(true)
bool(true)
Output for 5.0.0 - 5.0.5 , 5.1.1 - 5.1.6 , 5.2.0 bool(true)
bool(false)
bool(true)
bool(false)
bool(false)
bool(true)
bool(false)
bool(true)
bool(false)
bool(true)
bool(true)
bool(false)
Output for 5.1.0 Fatal error: fatal flex scanner internal error--end of buffer missed in /in/rU77c on line 37
Process exited with code 255 . Output for 4.3.2 - 4.3.11 , 4.4.0 - 4.4.9 Fatal error: Class mystuff: Cannot inherit from undefined class arrayobject in /in/rU77c on line 3
Process exited with code 255 . Output for 4.3.0 - 4.3.1 Fatal error: Class mystuff: Cannot inherit from undefined class arrayobject in /in/rU77c on line 3
preferences:dark mode live preview
234.4 ms | 401 KiB | 394 Q