3v4l.org

run code in 300+ PHP versions simultaneously
<?php function parseCSS($rawText) { $matches = array(); $selections = preg_match_all('/\/\* customize_(.+?) \*\/(.+?)\/\* customize_\1 \*\//s',$rawText,$matches); if (!$selections) return array(); $realMatches = array(); foreach($matches[1] as $key => $val) { $elements = array(); $realMatches[$val] = array(); preg_match_all('/([a-z\-]+?)[\s\t]*:(.+?);/s',$matches[2][$key],$elements); foreach ($elements[1] as $k => $v) { $realMatches[$val][] = array($v,trim($elements[2][$k])); } } return $realMatches; } function replaceTokensWithMap($map,$input) { foreach ($map as $key => $tokens) { $css = ""; foreach ($tokens as $token) { $css .= implode(':',$token).";" } $input = preg_replace("/\/\* customize_$key \*\/.+?\/\* customize_$key \*\//",$input); } return $input; } $css = ' /* colors * 73880b dark green * f4ffd2 light green * 69ab2b bright green (links & headers) * daf095 med green sidebar backgrounds, header nav * 50AAB5 blue for hovers.. */ /* HTML Tag Redefinition */ html, body { height: 100%; font-family:Arial, Helvetica, sans-serif; } body { padding: 0px; margin: 0px; background: #fff url(images/footer_grass.jpg) repeat-x fixed left bottom; } img { border: 0px } a { cursor:pointer } /* Page Structure / Navigation */ #page { width:800px; margin: auto; background-color:#f4ffd2; height: auto !important; height:100%; min-height:100%; position:relative; background:url(images/central_columns_bg.jpg) repeat-y top left; } #page.sidebar-left { background:url(images/central_left_columns_bg.jpg) repeat-y top left; } #page #header { position:relative; height:100px; background: url(images/header_bg.jpg) repeat-x top left #73880b; padding:15px; } #page #header #logo { color:#fff; font-size:32px; line-height: auto; padding: 0px; margin:0; cursor:pointer; position:absolute; bottom:15px; left: 15px; width:308px; overflow:visible; } #page #header #logo a { /* customize_header_logo */ color: #ffffff; /* customize_header_logo */ /* customize_header_logo_text */ font: normal bold 32px Arial; /* customize_header_logo_text */ text-decoration:none; } #page #header #logo p{ display:inline; line-height:inherit; font-size:inherit; padding:inherit; margin:inherit; color:inherit } #page #header ul.nav-header { list-style:none; margin:0px; float: right; padding:0px; z-index:2; overflow:visible; } #page #header ul.nav-header li { float:left; padding:2px 0px; margin-left:24px; margin-bottom: 0px; /* customize_header_link_text */ color:#daf095; /* customize_header_link_text */ font-size:14px; letter-spacing:1.5px; margin-top:0px } #page #header ul.nav-header li a, #page #header ul.nav-header li a:hover { text-decoration:none; color:#daf095 } #page #header ul.nav-header li.nav-selected { font-weight:bold; } /* #page #header #header-area { position:relative; height:75px; } */ #page #header #header-area { position: absolute; bottom: 15px; right: 15px; width: 462px; } #page #homeHeader { background: url(images/home_header.jpg) top left no-repeat; min-height:192px; } #page #homeHeader, #page #pageHeader { margin:0; padding:0; position:relative; } #page #central { clear:both; padding-bottom:30px; /* for footer */ } #page.no-sidebar { background-image: none !important; background-color:#f4ffd2; } /* body & sidebar */ #page #central #body { float:left; text-align:left; width:542px; padding:15px; /* customize_background */ background-color:"#f4ffd2"; border-color : red; /* customize_background */ } #page #central #sidebar { float:right; width:198px; padding:15px 15px 30px 15px; background: #daf095; } #page.sidebar-left #central #sidebar { float:left; width: 94px } #page.sidebar-left #central #body { float:right; width: 646px; padding: 15px; } #page.no-sidebar #body { float: none !important; width: auto !important } #page #central #sidebar p { line-height:24px } #page #central #sidebar ul.nav { list-style:none; margin-left:0px; padding:0px; padding-left:0; font-size:11px; } #page #central #sidebar ul.nav li { margin-bottom:10px; } #page #central #sidebar ul.nav a { text-decoration:none; color:#69ab2b } #page #central #sidebar ul.nav a.nav-selected { font-weight: bold } #page #central #sidebar ul.nav a:hover { text-decoration:underline } #page #central #sidebar ul.nav ul { list-style:none; margin-left:5px; padding:0px; margin-top:10px; } #page #central #sidebar ul.nav ul li { padding-left: 5px; margin: 0; border-left: 1px solid #69ab2b; } #page #central #sidebar ul.nav ul li ul li { list-style:square inside; padding-left:0; } #page #central #sidebar ul.nav ul li ul li { border:none; } #page #footer { height:10px; line-height:10px; background:url(images/footer_bg.jpg) repeat-x; clear:both; color:#daf095; font-size:10px; text-align:center; padding:10px 0 10px 0; position:absolute; bottom:0; width:100% } #page #footer a { color:#daf095; text-decoration:none; } span.sign-in {margin-left: 20px} #page #footer span.powered-by { float:right; margin-right:20px;} /* MISC STYLES & SHORTCUTS */ div.code { border: 1px solid #ddd; background: #eee; padding: 10px } div.spacer, div.ccm-spacer { clear:both; font-size:1px; line-height:1px } .noTopSpace { margin-top:0px; padding-top:0px } /* customize_miscellaneous */ /* customize_miscellaneous */'; echo replaceTokensWithMap(parseCSS($css),$css);

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.170.0200.05019.21
5.4.160.0170.05018.95
5.4.150.0200.07019.17
5.4.140.0170.04716.43
5.4.130.0230.07316.34
5.4.120.0200.05316.36
5.4.110.0200.05016.60
5.4.100.0270.07316.31
5.4.90.0330.05016.60
5.4.80.0270.06316.40
5.4.70.0270.07016.60
5.4.60.0230.06716.17
5.4.50.0270.04316.33
5.4.40.0170.06716.16
5.4.30.0330.03316.42
5.4.20.0230.04716.53
5.4.10.0230.04316.23
5.4.00.0200.06715.75
5.3.270.0200.05714.51
5.3.260.0200.05314.54
5.3.250.0130.05714.70
5.3.240.0370.04714.54
5.3.230.0200.06314.57
5.3.220.0130.04314.50
5.3.210.0300.05714.63
5.3.200.0300.06314.50
5.3.190.0300.04314.59
5.3.180.0230.06314.79
5.3.170.0230.06014.65
5.3.160.0170.05014.69
5.3.150.0230.05714.66
5.3.140.0230.05314.56
5.3.130.0230.07314.53
5.3.120.0230.06314.47
5.3.110.0270.06314.46
5.3.100.0200.05314.12
5.3.90.0230.03014.04
5.3.80.0170.04314.04
5.3.70.0300.03713.94
5.3.60.0230.04013.94
5.3.50.0230.07013.86
5.3.40.0230.07014.07
5.3.30.0330.06013.95
5.3.20.0230.06713.78
5.3.10.0200.04013.59
5.3.00.0200.07013.87

preferences:
131.48 ms | 1394 KiB | 7 Q