Wir verwenden Guzzle 6, um eine Anfrage an eine .NET API aus unserer Laravel 5-Anwendung zu stellen.Guzzle, JSON und UTF-16
zB (nicht echten Code)
$response = Guzzle\Client->get('/utf16-endpoint');
$array = json_decode($response->getBody());
Das macht $array = null
und wieder mit anderen Varianten wie
$array = json_decode((string) $response->getBody());
oder
$array = json_decode($response->getBody()->getContent());
Diese alle null
Rückkehr am EndeIch kann die API-Antwort nicht einfügen, da sie immer wieder von Dingen wie Gists, Pastebin usw. konvertiert wird. Daher habe ich eine Antwort als .txt-Datei hochgeladen. Wenn Sie in sublime/atom usw. öffnen, sollte dies als "UTF- 16 LE "
Was wäre der richtige Weg (wir benutzen PHP7), um diese Antwort von guzzle zu nehmen und sicherzustellen, dass der JSON in ein Array mit Objekten umgewandelt wird?
Der Schlüssel Ich habe bemerkt wurde, dass UTF-16 ist nicht UTF-16LE Spek! Ich merkte nicht, dass wir die LE brauchten, sobald wir hinzugefügt haben, dass alles in Ordnung war! – Owen