3v4l.org

run code in 300+ PHP versions simultaneously
<?php class MVCFramework { var $url = ''; function __construct($url) { $this->url = $url; //HTTP_REQUEST URL $this->run(); } function run() { if ($route = Routes::get($this->url)) { list($controller, $action) = route; $controllerObj = new $$controller; $controllerObj->$$action(); //template } else { print_r('404'); } } } class Routes { static $routes = array(); static function add($route, $controller, $action) { self::$routes[] = array($route, $controller.'Controller', $action); } static function getRoutes() { return self::$routes; } } abstract class Model { // connect to DB and etc. } class BooksController { function index() { $books = BookModel::all() } function show() { $id = 1; $books = BookModel::find(1); } } class Book extend Model{ static function all() { $books = array('Book', 'Book', 'Book'); return $books; } static function find() { $book = 'Book'; return $book; } } class View { } Routes::add('/books', 'Books', 'index'); Routes::add('/books/:id', 'Books', 'show'); $url = '/books'; new MVCFramework($url);

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
5.4.300.0120.04212.53
5.4.290.0080.04512.52
5.4.280.0070.04312.42
5.4.270.0050.04612.42
5.4.260.0040.04312.42
5.4.250.0050.04212.42
5.4.240.0080.03612.42
5.4.230.0100.04012.41
5.4.220.0060.04012.41
5.4.210.0060.04012.41
5.4.200.0050.04012.41
5.4.190.0080.03712.41
5.4.180.0070.03612.41
5.4.170.0070.03712.42
5.4.160.0070.03812.41
5.4.150.0040.04112.41
5.4.140.0050.04012.10
5.4.130.0070.04012.08
5.4.120.0090.04512.05
5.4.110.0050.04612.04
5.4.100.0110.04112.04
5.4.90.0060.04712.04
5.4.80.0090.04312.04
5.4.70.0120.04012.04
5.4.60.0060.04212.04
5.4.50.0120.06212.04
5.4.40.0100.04912.02
5.4.30.0110.04112.02
5.4.20.0070.04212.02
5.4.10.0120.03812.02
5.4.00.0060.05211.51
5.3.280.0070.04912.71
5.3.270.0140.04912.72
5.3.260.0100.05512.72
5.3.250.0100.06212.71
5.3.240.0110.05112.71
5.3.230.0110.04812.70
5.3.220.0070.05512.68
5.3.210.0130.05012.68
5.3.200.0130.04912.68
5.3.190.0150.05012.68
5.3.180.0100.06512.67
5.3.170.0070.05912.67
5.3.160.0100.06512.68
5.3.150.0090.05512.67
5.3.140.0110.05212.66
5.3.130.0120.05312.66
5.3.120.0080.05712.66
5.3.110.0080.05112.66
5.3.100.0100.04512.14
5.3.90.0080.05212.12
5.3.80.0100.06512.11
5.3.70.0120.04712.11
5.3.60.0090.04512.10
5.3.50.0130.04212.04
5.3.40.0090.04312.04
5.3.30.0070.04612.00
5.3.20.0090.04311.79
5.3.10.0090.04511.75
5.3.00.0100.05111.73

preferences:
134.8 ms | 1386 KiB | 7 Q