本文目录一览:
返回如下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;
}
}