Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich JSONP Resultset in PHP extrahieren?

Wie kann ich JSONP Resultset in PHP extrahieren?

Linda Hamilton
Linda HamiltonOriginal
2024-10-30 05:05:28829Durchsuche

How Can I Extract JSONP Resultset in PHP?

JSONP-Ergebnismenge in PHP extrahieren

Diese Abfrage befasst sich mit dem Prozess des Zugriffs auf Daten, die von einer URL zurückgegeben werden, die JSONP (JSON mit Padding) verwendet. , wie durch die bereitgestellte Yahoo Finance-URL veranschaulicht. PHP verfügt über die Fähigkeit, diese Daten abzurufen.

Die von der URL empfangene Antwort wird von einer JavaScript-Rückruffunktion umschlossen, was die direkte JSON-Analyse erschwert. Um auf die eigentliche JSON-Ergebnismenge zuzugreifen, müssen wir den Funktionsnamen und die Klammern aus der Antwort entfernen.

Glücklicherweise kann eine PHP-Funktion bei dieser Extraktion helfen:

<code class="php">function jsonp_decode($jsonp, $assoc = false) { 
    if($jsonp[0] !== '[' &amp;&amp; $jsonp[0] !== '{') { 
       $jsonp = substr($jsonp, strpos($jsonp, '('));
    }
    return json_decode(trim($jsonp,'();'), $assoc);
}</code>

Diese Funktion effektiv deckt die zugrunde liegenden JSON-Daten auf und ermöglicht es uns, sie mit der in PHP integrierten json_decode-Funktion zu analysieren.

<code class="php">$data = jsonp_decode($response);</code>

Diese Methode gewährt uns Zugriff auf den JSON-Ergebnissatz, der in der Variablen $data gespeichert ist und dann gespeichert werden kann bei Bedarf weiterverarbeitet.

Das obige ist der detaillierte Inhalt vonWie kann ich JSONP Resultset in PHP extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn