Блог

Как сделать HTTP-запрос или HTTPS-запрос в PHP скрипте

7 years ago
53K
Sergei Nikonov
 
В программированию, очень часто встречается задача, когда нужно обратиться к другому сайту через HTTP или HTTPS. В этой статье мы рассмотрим простой способ, как с помощью языка программирования PHP выполнить данную задачу.
 

Для чего обращаться с помощью PHP через HTTP или HTTPS к другому сайту?

Причин может быть несколько, например, на вашем сайте, есть часть функционала, которая отвечает за добавление новых товаров или каталогов фильмов на ваш сайт. 
Новые фильмы выходят на экран практически ежедневно и этот процесс лучше автоматизировать, чтобы этим занимался робот, который сделает это бесплатно.
 

 
С товарами, ситуация такая же - у вашего интернет-магазина могут быть партнеры, которые захотят разместить на вашем сайте свои товары и с каждой продажи товара, партнеры будут отдавать вам, часть своих доходов. Если у партнера несколько тысяч товаров и база постоянно обновляется, процесс добавления товаров на сайт также необходимо автоматизировать с помощью языка программирования PHP. 
 
Кстати, в нашем курсе Профессия веб-программист, мы подробно  на практическом примере рассматриваем, как можно быстро добавить из одного источника в базу данных вашего сайта тысячи фильмов.
 
 

Пример обращения к другому сайту с помощью PHP

В этом простом примере, мы будем использовать стандартную функцию PHP под названием  file_get_contents().
 
Для начала, давайте попробуем через API социальной сети ВКонтакте получить информацию о пользователе с ID 210700286. Просто введите в браузер ссылку ниже:
 
https://api.vk.com/method/users.get.json?user_ids=210700286&fields=bdate&v=5.68
 
 
В ответ от сервера VK, вы увидите следующую информацию:
{
- response:  [
    - {
        - id: 210700286,
        - first_name: "Lindsey",
        - last_name: "Stirling",
        - bdate: "21.9.1986"
    - }
- ]
}

 

где, мы получили Имя, Фамилию и дату рождения пользователя с ID 210700286. 
 
Если вы зарегистрированы в социальной сети ВКонтакте, вы можете попробовать по ID, получить информацию о вас или вашем друге. 
 
Как теперь мы может с помощью PHP получить эту информацию и преобразовать ее в массив, для удобной дальнейшей работы?
 
С помощью языка программирования PHP и функции file_get_contents(), это сделать очень просто!
 
Если у вас не установлен и не настроен веб-сервер для работы с PHP, посмотрите бесплатно онлайн видео "Как установить и настроить веб-сервер" из курса PHP/MySQL.
 
Напишите следующий код в файле index.php:
 
<?php

    $user_id = 210700286;

    $info = file_get_contents('https://api.vk.com/method/users.get.json?user_ids='.$user_id.'&fields=bdate&v=5.68');
    $info = json_decode($info, true);
    print_r($info);

?>

 

$user_id - это переменная, в которую вы записываете ID пользователя VK,
$info - в этой переменной мы сохраняем результат обращения к API сайта VK.COM
 
Далее, с помощью PHP-функции json_decode, мы преобразуем JSON, полученный от VK в массив PHP, для удобной дальнейшей работы и функцией print_r() мы выводим массив в браузер.
 
Имея массив с этой информацией, вы можете на вашем сайте, отображать интересных вам пользователей, для какой-либо цели, а также с помощью HTML/CSS, вы можете красиво оформить вывод данной информации на вашем сайте. 
 
В нашем курсе PHP/MySQL мы подробно рассматриваем работу с массивами, переменными, базой данных, функциями и многое другое. 
 
 

Вывод

Как вы видите, с помощью PHP вы можете очень легко делать запросы к HTTP и HTTPS сайтам и мы рассмотрели лишь одну функцию языка программирования PHP с помощью которой можно получить данные из внешнего сайта.
 
В следующих статьях, мы рассмотрим еще одну интересную, но более мощную функцию, в которую вы сможете задавать дополнительные параметры, такие как браузер, операционная система и другие, для более изящной работы с внешними сайтами.