3v4l.org

run code in 300+ PHP versions simultaneously
<?php function padding($msg,$nb_chars) { $charset = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9'); for($cpt=0;$cpt<$nb_chars;$cpt++) { $rand = rand(0,61); print("!!!!!!!!!!!!!!!!!".$rand); $msg .= $charset[$rand]; } return $msg; } function mac($msg) { $key = "7h3_1337_k3y"; $nonce = "5uc3m01"; $bloc_size = 64; if(strlen($msg)<$bloc_size) { $msg = padding($msg,$bloc_size-strlen($msg)); $mac = $msg; } else if(strlen($msg)==$bloc_size) { $mac = $msg; } else if(strlen($msg)>$bloc_size) { $mac = hash_hmac("sha512",$msg.$nonce,$key,true); } return crypt($mac,'$6$rounds=5000$OhMyG05h!'); } $lemessage="UNMESSAGEASSEZLONGPOURTOMBERDANSLECASDUHASHMAPETREGENERERUNHASHAVECLEHASHDECETTEVALEUR"; $mac = mac($lemessage); $valuemac=hash_hmac("sha512","$lemessage".5uc3m01","7h3_1337_k3y",false); print("**".strlen($valuemac)."***".$valuemac."*******"); $mac2=eval('return hex2bin("c210825a47af7f8869fb6e11adc9dd3eceb85735c47807badaff958f0af386f5e3f7e24c15034ff6dc71d117697f5853da05bb76ec7086d07f25b53f707d9477");'); $b=mac($mac2); if($mac==$b) { print("OK"); } else{ print("KO"); } print($mac); print($b);

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)
7.0.00.0000.04320.27
5.6.160.0030.06720.55
5.6.150.0100.06018.28
5.6.140.0030.08318.18
5.6.130.0100.07318.16
5.6.120.0070.06721.14
5.6.110.0070.03721.14
5.6.100.0070.03721.07
5.6.90.0070.04021.03
5.6.80.0070.07720.45
5.5.300.0000.06718.05
5.5.290.0100.08718.02
5.5.280.0070.08020.79
5.5.270.0070.08320.83
5.5.260.0030.04720.89
5.5.250.0030.08720.57
5.5.240.0270.07020.26

preferences:
135.76 ms | 1394 KiB | 7 Q