在PHP 中提取JSONP 結果集
此查詢深入研究了訪問從使用JSONP(帶填充的JSON)的URL 返回的數據的過程,如提供的雅虎財經URL 所示。 PHP 具有檢索此資料的功能。
從 URL 接收的回應由 JavaScript 回呼函數封裝,這使得直接 JSON 解析變得複雜。要存取實際的 JSON 結果集,我們需要從回應中刪除函數名稱和括號。
幸運的是,PHP 函數可以協助此提取:
<code class="php">function jsonp_decode($jsonp, $assoc = false) { if($jsonp[0] !== '[' && $jsonp[0] !== '{') { $jsonp = substr($jsonp, strpos($jsonp, '(')); } return json_decode(trim($jsonp,'();'), $assoc); }</code>
此函數有效揭示底層的 JSON 數據,使我們能夠使用 PHP 內建的 json_decode 函數對其進行解析。
<code class="php">$data = jsonp_decode($response);</code>
此方法可讓我們存取儲存在 $data 變數中的 JSON 結果集,然後可以將其根據需要進一步加工。
以上是如何在 PHP 中擷取 JSONP 結果集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!