<?php
class Math {
const pi = 3.14;
}
class CircleMath extends Math {
public static function calculateArea($radio) {
return parent::pi * pow($radio, 2);
}
}
class Circle {
private $radio = '0.0';
private $color = <<<EOT
red
EOT;
public function __construct($radio, $color) {
$this->radio = $radio;
$this->color = $color;
}
public function calculateArea() {
return CircleMath::calculateArea($this->radio);
}
public function get_radio() {
return $this->radio;
}
public function get_color() {
return $this->color;
}
}
$className = 'Circle';
$circle = new $className(6);
echo sprintf('The area of %s circle with radio %s is: %s',
$circle->get_color(), $circle->get_radio(), $circle->calculateArea());
?>
Fatal error: Uncaught ArgumentCountError: Too few arguments to function Circle::__construct(), 1 passed in /in/RJAtZ on line 39 and exactly 2 expected in /in/RJAtZ:19
Stack trace:
#0 /in/RJAtZ(39): Circle->__construct(6)
#1 {main}
thrown in /in/RJAtZ on line 19
Process exited with code 255.
Warning: Missing argument 2 for Circle::__construct(), called in /in/RJAtZ on line 39 and defined in /in/RJAtZ on line 19
Notice: Undefined variable: color in /in/RJAtZ on line 21
The area of circle with radio 6 is: 113.04
Output for 5.1.0 - 5.1.6, 5.2.0 - 5.2.17
Parse error: syntax error, unexpected T_START_HEREDOC in /in/RJAtZ on line 16
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_START_HEREDOC in /in/RJAtZ on line 16
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_CONST, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/RJAtZ on line 3
Process exited with code 255.
Parse error: parse error, unexpected T_CONST, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/RJAtZ 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/RJAtZ on line 3
Process exited with code 255.