3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Defining __construct and filter makes filter a normal method class Filter { // PHP 4/5: E_STRICT "Redefining already defined constructor" // PHP 7: No error is raised // PHP 8: No error is raised function filter($a) { echo "In Filter::filter method\n"; } // This raises the E_STRICT in PHP 4/5 function __construct() { echo "In Filter constructor\n"; } } $f = new Filter(); $f->filter(3);
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
In Filter constructor In Filter::filter method
Output for 5.4.8 - 5.4.45, 5.5.24 - 5.5.35, 5.6.8 - 5.6.28
Strict Standards: Redefining already defined constructor for class Filter in /in/Rp9r5 on line 12 In Filter constructor In Filter::filter method

preferences:
183.7 ms | 402 KiB | 235 Q