3v4l.org

run code in 300+ PHP versions simultaneously
<?php class SalaryCalculator { private int $baseSalary = 300; public function calculateSalary(float $salaryMultiplier = 1.): float { return $this->baseSalary * $salaryMultiplier; } } $seniorManagerSalaryMultiplier = 1.5; $seniorManagerSalary = (new SalaryCalculator)->calculateSalary($seniorManagerSalaryMultiplier); var_dump($seniorManagerSalary); class SpecialSalaryCalculator extends SalaryCalculator { public function calculateSalary(int $salaryIncrease): int { return $this->baseSalary + $salaryIncrease; } } $seniorManagerSalaryIncrease = 100; $seniorManagerSalary = (new SpecialSalaryCalculator)->calculateSalary($seniorManagerSalaryIncrease); var_dump($seniorManagerSalary);
Output for 8.1.0 - 8.1.29, 8.2.0 - 8.2.21, 8.3.0 - 8.3.9
Fatal error: Declaration of SpecialSalaryCalculator::calculateSalary(int $salaryIncrease): int must be compatible with SalaryCalculator::calculateSalary(float $salaryMultiplier = 1): float in /in/mGLhY on line 17
Process exited with code 255.

preferences:
157.13 ms | 996 KiB | 7 Q