Поскольку вам нужно иметь возможность POST, а также GET, curl будет хорошим выбором (хотя вы можете легко использовать и fopen для GET, и curl для POST).
пример POST с помощью curl:
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_POST => 1,
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_POSTFIELDS => http_build_query(array(
'param' => 'value'
)),
));
if(curl_exec($ch) === FALSE) {
//handle failure
} else {
//handle success
}
curl_close($ch);
Это базовый пример, который необходимо улучшить для производственного приложения.Например, вам, вероятно, нужно проверить информацию об ответе с помощью curl_getinfo ().
пример GET с использованием fopen:
$fh = fopen($url, 'r');
$contents = fread($fh);
fclose($fh);
Недостатком является то, что если сервер возвращает значимые заголовки, вы можетене читаю их.Лучше использовать file_get_contents:
$content = file_get_contents($url);
print_r($http_response_header);
После этого вы сможете обратиться к переменной $ http_response_header, чтобы получить возвращенные заголовки.