首頁 > 後端開發 > php教程 > 如何使用 jsonp_decode() 在 PHP 中擷取 JSONP 結果集?

如何使用 jsonp_decode() 在 PHP 中擷取 JSONP 結果集?

Patricia Arquette
發布: 2024-10-30 11:10:53
原創
504 人瀏覽過

How to Extract JSONP Resultset in PHP with jsonp_decode()?

在PHP 中提取JSONP 結果集:使用jsonp_decode() 進行解碼

要從您提供的URL 存取返回的數據,您需要可以利用PHP 的jsonp_decode() 函數來擷取JSONP 結果集。 JSONP 是一種在 JavaScript 函數呼叫中嵌入 JSON 資料的格式。

實作:

  1. 刪除函數名稱:刪除JSON 資料周圍的函數名稱(和括號)。
  2. 使用 jsonp_decode() 功能: 使用 jsonp_decode() 解析擷取的 JSON 資料。語法為:

    <code class="php">$data = jsonp_decode($jsonString, $assoc = false);</code>
    登入後複製

自訂jsonp_decode() 函數:

以下自訂jsonp_decode( 🎜>

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

用法:

<code class="php">$yahooSS = "http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=yahoo&amp;callback=YAHOO.Finance.SymbolSuggest.ssCallback";

$yss = fopen($yahooSS,"r");
$data = jsonp_decode($response);

// Accessing the result 
foreach ($data->ResultSet->Result as $result) {
    echo $result->symbol . " - " . $result->name . "\n";
}</code>
登入後複製

DEMO:

此範例如何擷取與顯示建議的範例來自雅虎財經符號建議API 的名稱:

以上是如何使用 jsonp_decode() 在 PHP 中擷取 JSONP 結果集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板