3v4l.org

run code in 300+ PHP versions simultaneously
<?php <?php header('Content-type: text/html; charset=utf-8'); // эта функция отправляет команду в сокет, и возвращает ответ от сервера function sWrite( $socket, $data, $echo = true ){ // отображаем отправляемую команду, если это требуется //if( $echo ) echo $data; // отправляем команду в сокет fputs( $socket, $data ); // получаем первый байт ответа от сервера $answer = fread( $socket, 1 ); // узнаем информацию о состоянии потока $remains = socket_get_status( $socket ); // и получаем оставшиеся байты ответа от сервера if( $remains --> 0 ) $answer .= fread( $socket, $remains['unread_bytes'] ); // функция возвращает ответ от сервера на переданную команду return $answer; } // адрес электропочты, который надо проверить $email = "admin@fcdk.kiev.ua"; // получаем данные об MX-записи домена, указанного в email $mx = dns_get_record( end( explode( "@", $email ) ), DNS_MX ); $mx = $mx[0]['target']; // открываем сокет и создаем поток $socket = fsockopen( $mx, 25, $errno, $errstr, 10 ); if( !$socket ){ //echo "$errstr ($errno)\n"; }else{ // отправляем пустую строку, чтобы получить приветствие сервера /*echo*/ sWrite( $socket, "" ); // представляемся сами /*echo*/ sWrite( $socket, "EHLO example.com\r\n" ); /*echo*/ sWrite( $socket, "MAIL FROM: dummy@example.com\r\n" ); // запрашиваем разрешение на отправку письма адресату $response = sWrite( $socket, "RCPT TO: $email\r\n" ); //echo $response; // закрываем соединение /*echo*/ sWrite( $socket, "QUIT\r\n" ); fclose( $socket ); // ниже идет простейшая обработка полученного ответа //echo "\nCheck report:\n"; if( substr_count( $response, "550" ) > 0 ) echo "Ящикa ".$email." нет.<br>"; else if( substr_count( $response, "250" ) > 0 ) if( substr_count( $response, "OK" ) > 0 ) echo "Ящик ".$email." есть.<br>"; else echo "Ящик ".$email." есть, но он какой-то странный (like a relay host).<br>"; else echo "Ящик ".$email." не был распознан <br>"; } //variant 2 if( $curl = curl_init() ) { curl_setopt($curl, CURLOPT_URL, 'http://stealthdebuger.com/post/'); curl_setopt($curl, CURLOPT_RETURNTRANSFER,true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, "email=".$email); $out = curl_exec($curl); //echo $out; curl_close($curl); } $out = iconv("Windows-1251", "UTF-8", $out); $out_arr = explode('<h5>Проверка существования email</h5><hr>', $out); $res2 = $out_arr[1]; $out_arr = explode('</h5><hr>', $res2); $res2 = $out_arr[0]; $answer = trim(strip_tags($res2)); echo $answer; ?>

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.270.0060.03612.36
5.4.260.0050.04212.36
5.4.250.0040.04612.36
5.4.240.0050.04512.36
5.4.230.0060.05012.36
5.4.220.0070.05012.35
5.4.210.0080.04012.36
5.4.200.0050.04212.36
5.4.190.0070.04312.35
5.4.180.0050.04312.35
5.4.170.0050.04312.36
5.4.160.0040.04312.35
5.4.150.0040.04012.34
5.4.140.0060.04312.04
5.4.130.0100.04712.02
5.4.120.0110.04711.98
5.4.110.0050.04811.98
5.4.100.0050.04311.98
5.4.90.0050.04911.98
5.4.80.0050.03911.98
5.4.70.0050.03911.97
5.4.60.0070.04011.98
5.4.50.0090.03611.98
5.4.40.0110.04311.97
5.4.30.0050.04411.96
5.4.20.0060.04611.95
5.4.10.0050.04311.96
5.4.00.0070.04811.46
5.3.280.0060.05312.71
5.3.270.0070.04912.72
5.3.260.0080.04212.72
5.3.250.0070.04312.72
5.3.240.0110.04012.72
5.3.230.0060.04712.71
5.3.220.0070.05012.68
5.3.210.0050.04712.68
5.3.200.0070.04612.68
5.3.190.0070.04612.68
5.3.180.0100.04712.67
5.3.170.0140.06912.67
5.3.160.0090.03912.67
5.3.150.0100.04912.68
5.3.140.0060.04812.66
5.3.130.0060.05012.65
5.3.120.0060.04712.66
5.3.110.0060.04612.66
5.3.100.0070.04112.12
5.3.90.0060.03712.09
5.3.80.0070.03812.07
5.3.70.0060.03712.07
5.3.60.0040.04012.07
5.3.50.0090.03812.00
5.3.40.0060.04912.00
5.3.30.0080.04611.93
5.3.20.0050.04011.70
5.3.10.0070.04811.66
5.3.00.0090.04411.64

preferences:
141.8 ms | 1394 KiB | 7 Q