Я делаю вызов API с использованием PHP CURL по определенному URL-адресу. Я могу получить ответ в своем браузере.Как разобрать XML-код UTF-16, полученный из вызова API
CURL сохраняет этот ответ в переменной, как это:
$output = curl_exec($ch);
Теперь, когда я использую
print_r(htmlspecialchars($output, true));
Я получаю ответ в моем браузере.
<?xml version="1.0" encoding="utf-16" standalone="no"?>
<loginres>
<sessiontoken>123456</sessiontoken>
<timeout>7/30/2016 11:18:22 AM</timeout>
<status>1</status>
</loginres>
Поскольку это UTF-16 кодированный ответ, я не в состоянии использовать SimpleXML или DOM документа. Вы можете попробовать это (я потерпел неудачу несколько раз). Ничего не приходит.
Кроме того, я пытался, чтобы использовать «взрывается» функцию с массивом фильтром, и ответ выглядит следующим образом:
Array
(
[0] => version="1.0"
[2] => encoding="utf-16"
[3] => standalone="no"?>
[5] => 123456
[7] => 7/30/2016
[8] => 11:26:09
[9] => AM
[11] => 1
)
Теперь мой вопрос, как я могу использовать этот файл .... Я хотел создать PHP-переменные из тегов XML и проанализировать их, чтобы манипулировать и сохранять в моей базе данных.
Другой вариант - сохранить ответ в XML-файле на моем локальном сервере и использовать его с помощью JQuery, Ajax, но я не знаю, как это сделать. Пожалуйста, помогите.
Цель моего вопроса в том, чтобы обратиться за помощью, как использовать UTF-16 XML, полученный с помощью API ответа, в PHP. Я хотел создать переменные из XML-тегов и сделать манипуляции. Преобразование его на самом DOM будет жестким, поскольку я не контролирую сервер API. –
Здесь нет разницы - выберите его с помощью file_get_contents() и загрузите в DOM. Если он не сломан, DOM загрузит его. – ThW