【发布时间】:2013-04-06 06:49:58
【问题描述】:
我正在尝试使用 PHP(我很陌生)从 API 读取一些数据。我对 JSON 不是很熟悉,也没有 XML 经验。那么,这是一个好的开始。
有问题的资源是:
http://scores.nbcsports.msnbc.com/ticker/data/gamesMSNBC.js.asp?jsonp=true&sport=MLB&period=20130413
看看这个页面的来源,它似乎是相当结构化的。我试图在这个 url 上同时使用 file_get_contents 和 simplexml_load_file 来看看会发生什么。在第一种情况下,我只收到浏览器中显示的文本(在我未经训练的眼睛看来,这就像一个空数组)。第二种情况完全失败('start tag expected')。
这些数据是什么格式的,我应该如何访问它?如何下拉数据,例如提取某些标签的值?
更新
我忘了提到我还尝试在网址上回显json_decode,但无济于事。没有任何回应。
【问题讨论】:
-
JSON 和 XML 当然是两个不同的东西。您可能正在使用来自 Ajax 的 JSON 或 XML(还有第三件事)。 PHP 有很好的 JSON 和 XML 库:PHP/JSON、PHP/XML 和 15-Minute PHP with XML Start。不幸的是,developerworks 链接目前因站点维护而关闭:(
-
是的,我试图将其视为每个,但没有成功。我什至看不出我在处理什么。
-
谢谢,这很有帮助。但我不确定如何提取全部内容,以便我可以尝试提取 JSON。
-
另一个不错的 PHP/XML 教程:blog.teamtreehouse.com/how-to-parse-xml-with-php5。 PS:XML 总是这样:
<some_tag>something</some_tag>; JSON 通常看起来更像这样:{ some_item : "moose"; }JSON 上的一个很好的链接:JSON Tutorial。 -
您实际拥有的是 JSONP,它是填充的 JSON,可以轻松地在 HTML 文档的
<script>标记中使用。