【问题标题】:Apple JSON API not decoding properly in PHP [closed]Apple JSON API 在 PHP 中未正确解码 [关闭]
【发布时间】:2014-07-08 18:14:36
【问题描述】:

我了解了 Apple 查找 API 并想尝试一下。

JSON:http://itunes.apple.com/lookup?id=443904275

它只读取了resultCount,我无法读取其他数据,例如应用名称:

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

$json = file_get_contents('http://itunes.apple.com/lookup?id=443904275');
$data = json_decode($json,true);
$appname = $data['artistName'];

echo "<pre>";
echo ($appname);

exit;
?>

【问题讨论】:

  • 那么你为什么不尝试一些基本的调试,比如var_dump($data),看看你真正从api中得到了什么?
  • 嗨,马克我试过一次,但它全部转储,问题是我无法解决它为什么不能只读取一个数据
  • 将您的 JSON 数据粘贴到 json.parser.online.fr,以便更好地了解其结构。 {} 括号表示对象。 [] 表示数组。

标签: php ios json


【解决方案1】:

您需要了解对象的结构。你需要的是:

$appname = $data['results'][0]['artistName'];

【讨论】:

  • 它在两个更改中的返回错误注意:未定义的偏移量:第 9 行 /Volumes/my1t/# SERVER/111/Untitled.php 中的 1
  • jomathan 在第 9 行返回错误 - $appname = $data['results'][1]['artistName'];你能试试吗?我用的是 php 5.5.10 我不知道怎么回事
  • 感谢乔纳森大吻。 :* :*
【解决方案2】:

看来您需要使用 $data['results'][0]['artistName']

...假设 $data['resultCount'] == 1。

您可以随时在浏览器中输入http://itunes.apple.com/lookup?id=443904275,以查看您正在使用的 PHP 到底是什么。

(编辑:乔纳森所说的......)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    • 2014-06-14
    • 1970-01-01
    相关资源
    最近更新 更多