3v4l.org

run code in 300+ PHP versions simultaneously
  <?php     //Секретный ключ интернет-магазина   $key = "XkZMYW56NzVbNV1aekxGNVxvT3xwVHExZ005";     $fields = array();     // Добавление полей формы в ассоциативный массив   $fields["WMI_MERCHANT_ID"]    = "119175088534";   $fields["WMI_PAYMENT_AMOUNT"] = "100.00";   $fields["WMI_CURRENCY_ID"]    = "643";   $fields["WMI_PAYMENT_NO"]     = "12345-001";   $fields["WMI_DESCRIPTION"]    = "BASE64:".base64_encode("Payment for order #12345-001 in MYSHOP.com");   $fields["WMI_EXPIRED_DATE"]   = "2019-12-31T23:59:59";   $fields["WMI_SUCCESS_URL"]    = "https://myshop.com/w1/success.php";   $fields["WMI_FAIL_URL"]       = "https://myshop.com/w1/fail.php";   $fields["MyShopParam1"]       = "Value1"; // Дополнительные параметры   $fields["MyShopParam2"]       = "Value2"; // интернет-магазина тоже участвуют   $fields["MyShopParam3"]       = "Value3"; // при формировании подписи!   //Если требуется задать только определенные способы оплаты, раскоментируйте данную строку и перечислите требуемые способы оплаты.   //$fields["WMI_PTENABLED"]      = array("ContactRUB", "UnistreamRUB", "SberbankRUB", "RussianPostRUB");     //Сортировка значений внутри полей   foreach($fields as $name => $val)   {     if (is_array($val))     {        usort($val, "strcasecmp");        $fields[$name] = $val;     }   }     // Формирование сообщения, путем объединения значений формы,   // отсортированных по именам ключей в порядке возрастания.   uksort($fields, "strcasecmp");   $fieldValues = "";     foreach($fields as $value)   {       if (is_array($value))          foreach($value as $v)          {         //Конвертация из текущей кодировки (UTF-8)             //необходима только если кодировка магазина отлична от Windows-1251             $v = iconv("utf-8", "windows-1251", $v);             $fieldValues .= $v;          }      else     {        //Конвертация из текущей кодировки (UTF-8)        //необходима только если кодировка магазина отлична от Windows-1251        $value = iconv("utf-8", "windows-1251", $value);        $fieldValues .= $value;     }   }     // Формирование значения параметра WMI_SIGNATURE, путем   // вычисления отпечатка, сформированного выше сообщения,   // по алгоритму MD5 и представление его в Base64     $signature = base64_encode(pack("H*", md5($fieldValues . $key)));     //Добавление параметра WMI_SIGNATURE в словарь параметров формы     $fields["WMI_SIGNATURE"] = $signature;     // Формирование HTML-кода платежной формы     print "<form action=\"https://www.walletone.com/checkout/default.aspx\" method=\"POST\">";     foreach($fields as $key => $val)   {       if (is_array($val))          foreach($val as $value)          {        print "$key: <input type=\"text\" name=\"$key\" value=\"$value\"/> ";          }       else               print "$key: <input type=\"text\" name=\"$key\" value=\"$val\"/> ";   }     print "<input type=\"submit\"/></form>";   ?>

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.6.30.0030.04317.65
5.6.20.0100.03717.62
5.6.10.0130.07717.60
5.6.00.0070.07717.52
5.5.190.0030.06317.37
5.5.180.0070.04317.31
5.5.160.0100.04017.30
5.5.150.0130.03717.32
5.5.140.0030.07317.36
5.5.130.0070.05717.34
5.5.120.0130.07017.36
5.5.110.0030.05717.43
5.5.100.0030.07317.20
5.5.90.0130.06717.20
5.5.80.0030.07717.23
5.5.70.0070.07717.18
5.5.60.0000.06317.21
5.5.50.0070.03717.23
5.5.40.0030.06717.23
5.5.30.0130.07017.16
5.5.20.0030.05317.21
5.5.10.0070.06317.19
5.5.00.0000.05317.30
5.4.350.0000.04319.02
5.4.340.0030.04319.04
5.4.320.0100.03318.99
5.4.310.0100.03719.03
5.4.300.0070.08319.10
5.4.290.0070.07319.05
5.4.280.0100.04719.09
5.4.270.0030.04319.09
5.4.260.0100.03319.05
5.4.250.0000.05718.96
5.4.240.0100.07019.12
5.4.230.0130.06318.88
5.4.220.0130.06019.02
5.4.210.0100.07319.04
5.4.200.0000.08019.01
5.4.190.0070.07018.94
5.4.180.0100.03318.94
5.4.170.0070.07718.88
5.4.160.0070.03719.03
5.4.150.0030.04719.08
5.4.140.0070.07016.41
5.4.130.0100.04316.32
5.4.120.0000.05316.57
5.4.110.0030.05716.38
5.4.100.0030.04016.50
5.4.90.0070.03316.39
5.4.80.0000.03716.34
5.4.70.0100.07016.62
5.4.60.0030.03716.38
5.4.50.0030.05716.42
5.4.40.0070.07016.61
5.4.30.0070.03716.43
5.4.20.0030.07316.51
5.4.10.0070.05016.27
5.4.00.0000.03715.73
5.3.290.0030.04314.60
5.3.280.0070.03714.68
5.3.270.0030.04014.60
5.3.260.0100.07014.59
5.3.250.0070.07314.44
5.3.240.0070.08014.57
5.3.230.0030.08014.34
5.3.220.0030.04714.50
5.3.210.0030.04314.41
5.3.200.0070.03714.43
5.3.190.0030.04314.53
5.3.180.0000.04014.50
5.3.170.0000.04014.42
5.3.160.0070.04014.54
5.3.150.0030.04014.53
5.3.140.0070.03714.55
5.3.130.0100.07014.52
5.3.120.0030.05014.52
5.3.110.0030.05314.52
5.3.100.0000.04013.86
5.3.90.0100.03013.88
5.3.80.0070.03313.95
5.3.70.0070.03313.79
5.3.60.0100.04713.95
5.3.50.0000.04313.94
5.3.40.0030.03713.81
5.3.30.0030.04013.67
5.3.20.0030.04013.78
5.3.10.0070.06313.62
5.3.00.0000.04713.62

preferences:
139.88 ms | 1394 KiB | 7 Q