有的時候我們使用php curl傳送請求後,返回的是一串json值,如何獲取這段json的資料呢?
要知道,我們用$_post['any']
或$_get['any']
平常獲取的數值是需要對應的key
值的,而純json並沒有乙個key值來讓我們獲取,那麼我們應該怎麼做才能獲取呢?
$post
=json_decode
(json_decode
(file_get_contents
('php://input'))
);
兩次decode是因為獲取的字串經過了轉義,出現了很多斜槓,如
[,,
]
假設我們獲取的json為
}
以上面的例子為例
在物件導向
的php**中
有的時候無法通過$array['key']
來獲取json內的具體字典值
需要使用$var1 = $array->key
來獲取資料,如
//原本用這種無法獲取
$code
=$post
['status'][
'code'];
//200
//現在用箭頭可以獲取
$code
=$post
->
status
->
code
;//200
這樣就能獲得具體的值了
由於php是在服務端進行網路請求,相關資訊不會顯示在前端的chrome網路除錯中
所以在除錯php網路請求的時候就需要暴露具體的過程
在curl語句裡面加上這麼一條,返回的內容就會有具體的除錯值
//除錯curlif(
!curl_errno
($curl))
附封裝好的php curl的get和post請求函式
/**
* @function 封裝curlpost方法
* @param string $url 傳送請求的位址
* @param string $data 要傳送的資料
* @param string $type 要傳送的型別,例如json
* @author andy 改自我也不知道**來的**
* @return $res 返回資料
//除錯curl
// if (!curl_errno($curl))
curl_close
($curl);
return
$res
;}
/**
* @function 封裝curlget方法
* @param string $url 傳送請求的位址
* @author andy 改自我也不知道**來的**
* @return $data 返回解碼的json資料
*/public
function
curl_get
($url
)
網路請求與json資料解析 學習筆記
坑啊,無法儲存到草稿箱,還得重新寫一遍還好沒有一次性寫完。正文 compile com.mcxiaoke.volley library 1.0 19 然後是網路請求許可權 android name android.permission.internet android name android.pe...
PHP操作JSON資料
是乙個輕量級的文字資料交換格式,他比 xml 更小 更快,更易解析,所以在php開發過程中,我們經常會用它來傳遞資料,本文uncletoo將個大家介紹一下php如何操作json資料 php操作json資料一般在ajaxjson encode 函式將字串 陣列 生成json格式。先看示例 示例1 js...
php 操作 json資料
json encode array 或 object 這個是用來把物件 或 陣列轉換為 json格式資料 json decode string boolen 陣列為true,物件不用設定 這個是把現有的json資料轉化為 php 陣列或物件.如果json資料是乙個資料,轉化時建議把json deco...