<?php
class foo {
public function __construct() {
$this->something();
}
public function something() {
echo __CLASS__; // foo
var_dump($this);
}
}
class foo_bar extends foo {
public function __construct() {
parent::something();
$this->something();
}
public function something() {
echo __CLASS__; // foo_bar
var_dump($this);
}
}
class foo_bar_baz extends foo_bar {
public function __construct() {
parent::something();
$this->something();
}
public function something() {
echo __CLASS__; // foo_bar_baz
var_dump($this);
}
public function call() {
echo self::something(); // self
echo parent::something(); // parent
echo foo::something(); // grandparent
}
}
$obj = new foo_bar_baz();
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/qPbMn on line 5
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/qPbMn on line 5
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/qPbMn on line 5
Process exited with code 255.