<?php
class Foo {
public $obj;
}
class Zoo {
public $obj;
public function setObj($obj) { $this->obj = $obj; }
public function show() { var_dump($this->obj); }
}
class Bar {}
class Baz {}
$foo = new Foo();
$zoo = new Zoo();
$a = new Bar();
$b = new Baz();
$zoo->obj = &$foo->obj;
//$tmp = &$foo->obj;
$zoo->setObj($tmp);
$zoo->show();
$foo->obj = $a;
$zoo->show();
$foo->obj = $b;
$zoo->show();
Notice: Undefined variable: tmp in /in/UhtRi on line 23
NULL
object(Bar)#3 (0) {
}
object(Baz)#4 (0) {
}
Output for 7.3.32 - 7.3.33
NULL
object(Bar)#3 (0) {
}
object(Baz)#4 (0) {
}
Output for 5.0.0 - 5.0.3
Notice: Undefined variable: tmp in /in/UhtRi on line 23
NULL
object(Bar)#3 (0) {
}
object(Baz)#4 (0) {
}
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/UhtRi on line 3
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/UhtRi on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/UhtRi on line 3
Process exited with code 255.