通過WordPress HTTP API 獲取json內(nèi)容并解析

2016-04-18 16:25:38來源:WordPress智庫作者:

WordPress4.0馬上出來了,一個亮點就是JSON API的加入,今天我們提前來看看怎么獲取JSON的內(nèi)容并顯示出來。過程就是用PHP獲取遠程JSON的內(nèi)容,然后把獲取到的JSON轉(zhuǎn)化為PHP對象,然后循環(huán)輸出內(nèi)容。

WordPress 4.0的一個亮點就是JSON API的加入,今天我們提前來看看怎么獲取JSON的內(nèi)容并顯示出來。過程就是用PHP獲取遠程JSON的內(nèi)容,然后把獲取到的JSON轉(zhuǎn)化為PHP對象,然后循環(huán)輸出內(nèi)容。通過PHP和WordPress HTTP API 的方式都可以實現(xiàn),我們先來看一下這兩種方式的實現(xiàn)代碼。

PHP fopen方式

< ?php
 $handle = fopen("http://yoursite.com/news","rb");
 $content = "";
 while (!feof($handle)) {
     $content .= fread($handle, 10000);
 }
 fclose($handle);

 $content_array = json_decode($content);  #JSON內(nèi)容轉(zhuǎn)換為PHP對象
?>

WordPress HTTP API方式

WordPress給我們提供一套很方便的HTTP API(詳細使用方法參考[WordPress HTTP API](http://codex.wordpress.org/HTTP_API)),我們可以使用HTTP API很方便的實現(xiàn)上面的功能。

< ?php
    $content = wp_remote_retrieve_body( wp_remote_get(‘http://yoursite.com/news‘) );
    $content_obj = json_decode($content); #JSON內(nèi)容轉(zhuǎn)換為PHP對象
?>

可以看出,WordPress的方法是在是太簡單了,一行代碼就實現(xiàn)了PHPfopen方法幾行的功能,并且功能更加語義化,理解起來更容易。

顯示獲取的內(nèi)容

已經(jīng)獲取了JSON的內(nèi)容,并轉(zhuǎn)化為了PHP對象,顯示的時候直接循環(huán)輸出對象的內(nèi)容就可以了。

< ?php foreach ($content_obj->data as $key) { ?>
 < ?php echo $key->title; ?>
< ?php } ?>

適當(dāng)?shù)母袷交厦娴奈淖,顯示出來的效果和直接調(diào)用WordPress內(nèi)容是一樣的。

關(guān)鍵詞:WordPressjson