} function offsetUnset($index) { $GLOBALS["y"] = $index; } } $x = new foo(); $y = null; // IS_CONST $z = $x->const_get; echo $y, "\n"; $x->const_set = 1; echo $y, "\n"; $x->const_call(); echo $y, "\n"; foo::const_callstatic(); echo $y, "\n"; $z = $x["const_dim_get"]; echo $y, "\n"; $x["const_dim_set"] = 1; echo $y, "\n"; isset($x["const_dim_isset"]); echo $y, "\n"; unset($x["const_dim_unset"]); echo $y, "\n"; // IS_CONST + conversion $z = $x->{1}; echo $y, "\n"; $x->{2} = 1; echo $y, "\n"; // IS_TMP_VAR