Задать вопрос
@Ismar

Как тут все утроено?

Пожалуйста помогите разобраться в коде, что тут происходит?
<?php

/*

This script demonstrates transfer proccess between two
PerfectMoney accounts using PerfectMoney API interface.

*/

// trying to open URL to process PerfectMoney Spend request
$f=fopen('https://perfectmoney.is/acct/confirm.asp?AccountID=myaccount&PassPhrase=mypassword&Payer_Account=U987654&Payee_Account=U1234567&Amount=1&PAY_IN=1&PAYMENT_ID=1223', 'rb');

if($f===false){
   echo 'error openning url';
}

// getting data
$out=array(); $out="";
while(!feof($f)) $out.=fgets($f);

fclose($f);

// searching for hidden fields
if(!preg_match_all("/<input name='(.*)' type='hidden' value='(.*)'>/", $out, $result, PREG_SET_ORDER)){
   echo 'Ivalid output';
   exit;
}

$ar="";
foreach($result as $item){
   $key=$item[1];
   $ar[$key]=$item[2];
}

echo '<pre>';
print_r($ar);
echo '</pre>';



?>
  • Вопрос задан
  • 358 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
romka123
@romka123
Переучиваюсь из PHP в Java разраба
<?php

/*

Данный скрипт демонстрирует работу API системы PerfectMoney Spend

*/

// Попытка открыть url для запроса к API PerfectMoney Spend 
$f=fopen('https://perfectmoney.is/acct/confirm.asp?AccountID=myaccount&PassPhrase=mypassword&Payer_Account=U987654&Payee_Account=U1234567&Amount=1&PAY_IN=1&PAYMENT_ID=1223', 'rb');//открывает файл по url

if($f===false){
   echo 'error openning url';//Если происходит ошибка открытия выдаёт сообщение "error openning url"
}

// Получение данных
$out=array(); $out="";//Обнуление выходного массива данных
while(!feof($f)) $out.=fgets($f);//Запись данных в массив

fclose($f);//Закрытие потока (нужно для корректного завершения работы функции чтения данных)

// поиск спрятанных полей в html коде
if(!preg_match_all("/<input name='(.*)' type='hidden' value='(.*)'>/", $out, $result, PREG_SET_ORDER)){
   echo 'Ivalid output';//Вывод сообщения
   exit;//Остановка выполнения программы
}

$ar="";//Обнуление переменной
foreach($result as $item){//Обход массива и его разбор
   $key=$item[1];//сохранение значения в переменную key
   $ar[$key]=$item[2];//составление нового массива
}

echo '<pre>';
print_r($ar);//вывод данных из массива
echo '</pre>';



?>

Прокомментировал строки кода.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@vilgeforce
Раздолбай и программист
Учите PHP.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы