СВЕРНУТЬ запрос на получение с параметром, содержащим URL-адрес ПОЛУЧЕНИЯ


Я пытаюсь заставить ЗАВИТОК ДОБРАТЬСЯ до объекта открытого графика facebook:

ПОЛУЧИТЬ https://graph.facebook.com/?id= OBJECT_URL&очистить=истина&метод=сообщение

В моем случае OBJECT_URL содержит параметры GET:

Https://www.example.com/og.php?a=b&c=d

По этой причине я не могу использовать его в качестве параметра GET в file_get_contents() или CURLOPT_URL, так как получится что-то вроде это:

Https://graph.facebook.com/?id=https://www.example.com/og.php?a=b&c=d&scrape=true&method=post

Есть ли способ передать его в качестве параметра GET способом, аналогичным CURLOPT_POSTFIELDS?

Author: Maxim Laco, 2015-09-16

1 answers

Вам нужно экранировать свои параметры, функция http_build_query будет полезна:

$query = http_build_query([
 'id' => 'http://foo?a=1&b=2',
 'scrape' => true,
 'method' => 'post'
]);

$url = "https://graph.facebook.com/?".$query;

var_dump($url);

Это выведет:

https://graph.facebook.com/?id=http%3A%2F%2Ffoo%3Fa%3D1%26b%3D2&scrape=1&method=post
 23
Author: Andrzej Budzanowski, 2015-09-15 22:34:16