3v4l.org

run code in 300+ PHP versions simultaneously
<?php // 1- connect to db require("DatabaseConfigegb1.php"); // define quesry //StartFrom $decrypted_txt = decrypt(str_replace(" ", "+",$_GET['number'])); // $decrypted_txt = str_replace(" ", "+",$_GET['number']); if( empty($decrypted_txt) ) { die("Error in number");} if( mb_substr($decrypted_txt, 0, 2)== "20"){ $decrypted_txtnew= substr_replace($decrypted_txt, "", 0, 2); }elseif (mb_substr($decrypted_txt, 0, 4)== "0020"){ $decrypted_txtnew= substr_replace($decrypted_txt, "", 0, 4); }elseif (mb_substr($decrypted_txt, 0, 3)== "020"){ $decrypted_txtnew= substr_replace($decrypted_txt, "", 0, 3); }elseif (mb_substr($decrypted_txt, 0, 1)== "0"){ $decrypted_txtnew= substr_replace($decrypted_txt, "", 0, 1); }else{ $decrypted_txtnew= $decrypted_txt; } $query="SELECT id as 'id' ,name as 'name', number as 'number', ' ' as 'addrass' FROM list_numbers WHERE MATCH(number,name) AGAINST('%" . $decrypted_txtnew. "') GROUP BY name UNION SELECT id as 'id' ,name as 'name', number as 'number', ' ' as 'addrass' FROM list_numbers WHERE MATCH(number,name) AGAINST('0" . $decrypted_txtnew . "') GROUP BY name UNION SELECT id as 'id' ,name as 'name', number as 'number', ' ' as 'addrass' FROM list_numbers WHERE MATCH(number,name) AGAINST('20" . $decrypted_txtnew . "') GROUP BY name UNION SELECT id as 'id' ,name as 'name', number as 'number', ' ' as 'addrass' FROM list_numbers WHERE MATCH(number,name) AGAINST('0020" . $decrypted_txtnew . "') GROUP BY name "; $query1="SELECT numberphone as 'id' ,name as 'name', numberphone as 'number', addrass as 'addrass' FROM list_numbers WHERE MATCH(numberphone,name) AGAINST('20" . $decrypted_txtnew . "') GROUP BY name "; $query2="SELECT id as 'id' ,name as 'name', number as 'number', ' ' as 'addrass' FROM list_numbers WHERE MATCH(number,name) AGAINST('0020" . $decrypted_txtnew . "') AND codecoutnry='EG' GROUP BY name "; $startTime = time(); $result= mysqli_query($connecteg1, $query); $result1= mysqli_query($connecteg2, $query1); $result2= mysqli_query($connect2, $query2); if(! $result && ! $result1 && ! $result2 ) { die("Error in query");} //get data from database $output=array(); while($row= mysqli_fetch_assoc($result)) { $output[]=escapeJsonString($row); //$row['id'] } while($row2= mysqli_fetch_assoc($result2)) { $output[]=escapeJsonString($row2); } while($row1= mysqli_fetch_assoc($result1)) { $output[]=escapeJsonString($row1); } $endTime = time(); if ($output) { print( "{". "'info':'". json_encode($output) ."'}");// this will print the output in json } else{ print("error"); } function encrypt($wordEnc) { $key16 = substr("egbti23456122313", 0, 16); $key16Hex = unpack('H*', $key16); return openssl_encrypt($word, 'AES-128-CBC', $key16, 0, hex2bin($key16Hex[1])); } function decrypt($wordDec) { $key16 = substr("egbti23456122313", 0, 16); $key16Hex = unpack('H*', $key16); return openssl_decrypt($wordDec, "AES-128-CBC", $key16, 0, hex2bin($key16Hex[1])); } function escapeJsonString($value) { $escapers = array( "\"", '\'',"+"); $replacements = array(" ", " ",""); $result = str_replace($escapers, $replacements, $value); return $result; } // 4 clear mysqli_free_result($result); //5- close connection mysqli_close($connecteg1); ?>

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)
8.3.20.0100.01021.90
8.3.10.0090.00921.77
8.3.00.0170.00318.82
8.2.150.0120.00620.70
8.2.140.0160.00322.09
8.2.130.0120.00320.51
8.2.120.0070.00719.27
8.2.110.0030.01719.39
8.2.100.0170.00318.97
8.2.90.0090.00618.95
8.2.80.0080.00819.21
8.2.70.0190.00318.73
8.2.60.0140.00718.89
8.2.50.0120.00319.18
8.2.40.0060.00918.75
8.2.30.0100.00718.84
8.2.20.0080.00818.65
8.2.10.0000.01618.79
8.2.00.0120.00318.68
8.1.270.0040.01122.36
8.1.260.0070.01422.07
8.1.250.0110.00422.31
8.1.240.0090.00618.61
8.1.230.0160.00618.40
8.1.220.0110.00718.98
8.1.210.0120.00918.59
8.1.200.0170.00318.97
8.1.190.0130.01018.80
8.1.180.0160.00018.38
8.1.170.0070.01518.86
8.1.160.0120.00618.57
8.1.150.0140.01018.85
8.1.140.0100.00618.53
8.1.130.0090.00618.72
8.1.120.0040.01118.80
8.1.110.0110.00418.63
8.1.100.0180.00019.59
8.1.90.0070.01118.38
8.1.80.0140.00319.84
8.1.70.0100.00718.53
8.1.60.0120.00318.80
8.1.50.0150.00018.71
8.1.40.0040.01118.88
8.1.30.0070.00719.16
8.1.20.0110.00420.18
8.1.10.0120.00318.88
8.1.00.0090.00618.77

preferences:
31.13 ms | 403 KiB | 5 Q