@noname_2019

Интерпретация результатов CURL, каким образом?

Добрый всем день. Столкнулся с интересной ситуацией, хотелось бы вашей помощи.
Я только начинаю копаться в Web-программировании (стаж не более 4-х месяцев), занимаюсь всем, чем придётся (вёрстка, js, php, и т.п.).
Суть вопроса.

Есть следующий php-код:
<?php
	$ch = curl_init();
	$url="url скрыт";
	$param="{\r\n\"Request_id\": \"необходимый id\",\r\n\"Method\": \"getCities\",\r\n\"Parameters\": {\r\n}\r\n}\r\n";


	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_VERBOSE, true);
	curl_setopt($ch, CURLOPT_HEADER, true);
	curl_setopt($ch, CURLOPT_POST, true);
	curl_setopt($ch, CURLOPT_POSTFIELDS,$param);
//	curl_setopt($ch, CURLOPT_CERTINFO,true);
	
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);


	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);


	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
	curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
	curl_setopt($ch, CURLOPT_USERPWD,"login:password");
	curl_setopt($ch, CURLOPT_COOKIEFILE,"cookie.txt");
	curl_setopt($ch, CURLOPT_COOKIEJAR,"cookie.txt");


	$result = curl_exec($ch); 
	
	var_dump($result);

	
	curl_close($ch);
	
	
?>


Данный запрос отправляется на сервер, от которого мы получаем список имеющихся на базе городов. Ответ, находящийся в $result, выглядит следующим образом:

string(267) "HTTP/1.1 200 OK Date: Thu, 04 Apr 2019 06:31:15 GMT Server: Apache Content-Length: 142 Content-Type: application/json { "Request_id": "id", "Parameters": [ "Город1", "Город2" ], "Error": 0 }"

Собственно, вся проблема в том, чтобы вытащить из этого ответа всё, что находится в массиве Parameters.
Единственный способ, до которого пока я допёр - вручную парсить и разбивать при помоищ strpos, substr, и str_replace. Но возникает проблема при других запросах, например, вместо метода getCities будет метод getCars, у которых явно будет больше характеристик, чем одна (и, получается, массив parameters будет содержать внутри себя ещё массивы, и т.п.). Есть ли другие способы, более оптимальные и простые?
  • Вопрос задан
  • 99 просмотров
Решения вопроса 1
@DanKud
Зачем вам заголовки в выводе? Убирайте заголовки и просто распарсите JSON:
.....
curl_setopt($ch, CURLOPT_HEADER, false);
.....

$arr = json_decode($result, true);
print_r($arr);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@oxidmod
Можно взять газл какой-нибудь и не париться =)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Sveak Барнаул
от 50 000 руб.
OTC.RU Барнаул
от 50 000 руб.
ИТ-центр Воронеж
от 50 000 до 70 000 руб.
21 июл. 2019, в 00:52
80000 руб./за проект
20 июл. 2019, в 19:38
10000 руб./за проект
20 июл. 2019, в 17:55
15000 руб./за проект