PHP

Отправить 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.
Теги:
POST, file_get_contents
Добавлено: 10 Мая 2018 12:29:49 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...