本文目錄一覽:
返回如下json數據,php如何才能提取其中的keyPhrases值?
如果我沒有猜錯,你應該是沒有得到關聯數據 而是得到的 object類型的數據。所以你無法獲取其中的值。
那麼首先來看看這個函數: json_decode ( string $json [, bool $assoc ] )
1.作用:接受一個 JSON 格式的字符串並且把它轉換為 PHP 變量
2.知識點:這個函數有兩個參數。第一個參數json格式的字符串數據,第二個參數是決定其返回值的類型。
3.看看返回值說明:
Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned. 要設置為true才能得到array數據
4.分析:你的問題就在第二個參數,你應該是沒有設置,所以就返回了object類型的數據,而不是array.
解答:在後面加上第二個參數true; 示例:json_decode(‘json’,true);
php如何獲取json中數據
可以用$obj=key 的方式直接讀取 也可以先轉換為數組 用遍曆數組的方法讀取
?php
$json = ‘{“a”:100,”b”:200,”c”:300,”d”:400,”e”:500}’;
//首先將json字符串轉換成關聯數組
$arr=json_decode($json, true);
//然後循環讀取數據
foreach($arr as $item){
echo $item;
echo “br/”;
}
?
運行結果:
100
200
300
400
500
PHP遍歷鍵值對數組
可以遍歷兩次$a, 第一次取出所有的父級欄目,放入$newarr中,第二次將子欄目放入對應
的父級欄目數組中, 最後使用$newarr就行
不過這是建立在只有二級欄目的基礎上,如果有三級欄目的話就還要麻煩些了
$newarr = array();
foreach ($a as $key = $value)
{
if($value[‘fID’] == 0)
{
$cid = $value[‘cID’];
$newarr[$cid] = $value;
unset($a[$key]);
}
}
foreach ($a as $key = $value)
{
if($value[‘fID’] != 0)
{
$fid = $value[‘fID’];
$newarr[$fid][‘zilanmu’][] = $value;
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/200233.html