2010-11-16 3 views
1

Я использую следующую команду в некоторых старых сценариев:локон CLI свернуться PHP

curl -Lk "https:www.example.com/stuff/api.php?" 

я затем записать заголовок в переменную и делать сравнения и так далее. То, что я действительно хотел бы сделать, это преобразовать процесс в PHP. Я включил curl, openssl и считаю, что у меня все готово.

То, что я не могу найти, - удобный перевод для преобразования этого синтаксиса командной строки в эквивалентные команды в PHP.

Я подозреваю, что что-то в порядке:

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 

// What goes here so that I just get the Location and nothing else? 

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

// Get the response and close the channel. 
$response = curl_exec($ch); 
curl_close($ch); 

взятием $ ответ = данные из апи «OK = 1 & ЭСТ»

Спасибо

ответ

2

Я немного смущен ваш комментарий:

// What goes here so that I just get the Location and nothing else? 

В любом случае, если вы хотите получить тело ответа от удаленного сервера, используйте:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$response = curl_exec($ch); 

Если вы хотите получить заголовки в ответе (т.е. то, что ваш комментарий может быть ссылкой на):

curl_setopt($ch, CURLOPT_HEADER, 1); 

Если ваша проблема что есть перенаправление между начальным вызовом и ответ, использование:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
+0

Я попытался: curl_setopt ($ ч, CURLOPT_RETURNTRANSFER, правда); – Scott

+0

Тем не менее, $ response = 1, когда я повторяю его. – Scott

+0

Действительно ли $ response === true? Каков вывод 'var_dump ($ response)'? – netcoder

Смежные вопросы