- Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.7
- Hello World
<?php
class A {
public function y() {
$GLOBALS['x'] = null;
return true;
}
public function z() {
echo "Hello World\n";
}
}
function nullthrows($x) {
if ($x === null) {
throw new Exception('Unexpected null');
}
return $x;
}
function foo($x) {
if ($x && $x->y()) {
nullthrows($x)->z();
}
}
$GLOBALS['x'] = new A();
$x = &$GLOBALS['x'];
foo($x);