Отправить POST запрос на сторонний сайт с помощью file_get_contents
В этой статье я хочу показать как с помощью php функции file_get_contents можно отправлять post запрос. Запрос можно делать ка на свой сервер так и на сторонний. Для примера можно создать локальный тестовый домен test.web, и создать в его корне скрипт index.php с таким кодом:
$a = $_POST['a'];
$b = $_POST['b'];
echo $a + $b;
Теперь необходимо создать другой локальный сайт, например test_2.web. На этом сайте создадим такой скрипт:
// массив для переменных, которые будут переданы с запросом
$paramsArray = array(
'a' => '5',
'b' => '10'
);
// преобразуем массив в URL-кодированную строку
$vars = http_build_query($paramsArray);
// создаем параметры контекста
$options = array(
'http' => array(
'method' => 'POST', // метод передачи данных
'header' => 'Content-type: application/x-www-form-urlencoded', // заголовок
'content' => $vars, // переменные
)
);
$context = stream_context_create($options); // создаём контекст потока
$result = file_get_contents('http://test.web/index.php', false, $context); //отправляем запрос
var_dump($result); // вывод результата
После запуска скрипта, результат должен быть число 15.
На этом все, оказывается отправка пост-запросов можно сделать быстро и просто, и не обязательно использовать cUrl.
Комментарии:
Нету комментариев для вывода...