我正在尝试使用杂志api获取以下json内容。json的输出是这样的。我希望下面的json转换为php数组。
{
"bpath": "http://www.sampledomain.com/",
"clist": [
{
"cid": "11",
"display_type": "grid",
"ctitle": "abc",
"acount": "71",
"alist": [
{
"aid": "6865",
"adate": "2 Hours ago",
"atitle": "test",
"adesc": "test desc",
"aimg": "",
"aurl": "?nid=6865",
"weburl": "news.php?nid=6865",
"cmtcount": "0"
},
{
"aid": "6857",
"adate": "20 Hours ago",
"atitle": "test1",
"adesc": "test desc1",
"aimg": "",
"aurl": "?nid=6857",
"weburl": "news.php?nid=6857",
"cmtcount": "0"
}
]
},
{
"cid": "1",
"display_type": "grid",
"ctitle": "test1",
"acount": "2354",
"alist": [
{
"aid": "6851",
"adate": "1 Days ago",
"atitle": "test123",
"adesc": "test123 desc",
"aimg": "",
"aurl": "?nid=6851",
"weburl": "news.php?nid=6851",
"cmtcount": "7"
},
{
"aid": "6847",
"adate": "2 Days ago",
"atitle": "test12345",
"adesc": "test12345 desc",
"aimg": "",
"aurl": "?nid=6847",
"weburl": "news.php?nid=6847",
"cmtcount": "7"
}
]
},
]
}
我的代码如下所示。
<?php
$json_url = "http://api.testmagazine.com/test.php?type=menu";
$json = file_get_contents($json_url);
$data = json_decode($json, TRUE);
echo "<pre>";
print_r($data);
echo "</pre>";
?>
上面的代码返回一个空数组。:(如何将上述JSON转换为php对象数组。我很无奈。
谢谢哈恩
您提供的JSON示例无效。使用此JSON验证程序http://jsonlint.com/在线进行检查。您需要删除第59行上的多余逗号。
一个拥有有效json的人,可以使用此代码将其转换为数组。
json_decode($ json,true);
Array
(
[bpath] => http://www.sampledomain.com/
[clist] => Array
(
[0] => Array
(
[cid] => 11
[display_type] => grid
[ctitle] => abc
[acount] => 71
[alist] => Array
(
[0] => Array
(
[aid] => 6865
[adate] => 2 Hours ago
[atitle] => test
[adesc] => test desc
[aimg] =>
[aurl] => ?nid=6865
[weburl] => news.php?nid=6865
[cmtcount] => 0
)
[1] => Array
(
[aid] => 6857
[adate] => 20 Hours ago
[atitle] => test1
[adesc] => test desc1
[aimg] =>
[aurl] => ?nid=6857
[weburl] => news.php?nid=6857
[cmtcount] => 0
)
)
)
[1] => Array
(
[cid] => 1
[display_type] => grid
[ctitle] => test1
[acount] => 2354
[alist] => Array
(
[0] => Array
(
[aid] => 6851
[adate] => 1 Days ago
[atitle] => test123
[adesc] => test123 desc
[aimg] =>
[aurl] => ?nid=6851
[weburl] => news.php?nid=6851
[cmtcount] => 7
)
[1] => Array
(
[aid] => 6847
[adate] => 2 Days ago
[atitle] => test12345
[adesc] => test12345 desc
[aimg] =>
[aurl] => ?nid=6847
[weburl] => news.php?nid=6847
[cmtcount] => 7
)
)
)
)
)
我试图使用一个代码,将数据从一个mySQL数据库绑定到一个变量的数据,把所有产生的$x到一个PHP数组,最后将其转换为JSON格式。然后,我将JSON转换为javascript来处理来自数据库的数据。 请查看我的代码: 我的问题是,为什么页面将其显示为输出,而不将数据传输到阵列 "准备("SELECT x从数据")) { $stmt-
问题内容: PHP手册上的示例显示了如何使用流上下文发送cookie。这是摘录: 您如何发送多个cookie?像#1或#2,还是什么? #1 #2 问题答案: #3
问题内容: 我正在使用PHP的函数来获取URL的内容,然后通过变量处理标头。 现在的问题是某些URL需要将一些数据发布到URL(例如,登录页面)。 我怎么做? 我意识到使用stream_context我可以做到这一点,但我并不完全清楚。 谢谢。 问题答案: 使用发送HTTP POST请求并不难,实际上:正如您所猜测的,必须使用参数。 在此页面的PHP手册中提供了一个示例:HTTP上下文选项 (引用
本文向大家介绍php中file_get_contents()函数用法实例,包括了php中file_get_contents()函数用法实例的使用技巧和注意事项,需要的朋友参考一下 我们先来看一下php中的 file_get_contents()函数的语法 filename是文件或URL的名称。 include_path如果启用,则在include_path中搜索文件 context这是用于修改流的
问题内容: 访问REST API时,这两段代码有何不同? 和 从以下两个方面判断,它们都产生相同的结果 问题答案: 是一个简单的螺丝刀。非常适合简单的GET请求,其中标头,HTTP请求方法,超时,cookiejar,重定向和其他重要内容无关紧要。 带有流上下文或带有setopt的cURL 的Powerdrill带有您可以想到的每一个细节。
本文向大家介绍PHP readfile与file_get_contents,包括了PHP readfile与file_get_contents的使用技巧和注意事项,需要的朋友参考一下 “ readfile”函数是PHP中的内置函数,可将文件直接读取到输出缓冲区中。文件名作为参数传递给函数。它返回在成功读取数据的情况下读取的字节数。否则返回FALSE- 示例 输出结果 这将产生以下输出- “ fil