<?php
class Heart{
public function Beat(){
echo 'bump bump'."\n";
}
}
class Animal{
protected $myVar;
protected $heart;
public function __construct() {
$this->myVar = 'a';
$this->heart = new Heart();
}
}
class Cat extends Animal {
function __construct(){
parent::__construct();
}
public function foo() {
echo $this->myVar."\n";
echo $this->heart."\n";
echo $this->heart->Beat();
}
}
$cat = new Cat();
$cat->foo();
a
Fatal error: Uncaught Error: Object of class Heart could not be converted to string in /in/N9C8O:25
Stack trace:
#0 /in/N9C8O(31): Cat->foo()
#1 {main}
thrown in /in/N9C8O on line 25
Process exited with code 255.
a
Catchable fatal error: Object of class Heart could not be converted to string in /in/N9C8O on line 25
Process exited with code 255.
Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6
a
Object id #2
bump bump
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/N9C8O on line 4
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/N9C8O on line 4
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/N9C8O on line 4
Process exited with code 255.