Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中获取json数据_Php_Arrays_Json_Youtube - Fatal编程技术网

在php中获取json数据

在php中获取json数据,php,arrays,json,youtube,Php,Arrays,Json,Youtube,Json代码是: {“apiVersion”:“2.1”,“数据”:“id”:“bLBSoC_2IY8”,“上传”:“2014-04-29T04:11:56.000Z”,“更新”:“2014-12-04T16:08:10.000Z”,“上传者”:“深夜”,“类别”:“喜剧”,“标题”:“与艾玛·斯通的口型大战”,“描述”:"吉米和艾玛·斯通在一场口型对决中对决,艾玛表现出她不怕闪电般的歌词。\n\n现在就订阅吉米·法伦主演的《今夜秀》:http://bit.ly/1nwT1aN\n\n观看吉米·

Json代码是:

{“apiVersion”:“2.1”,“数据”:“id”:“bLBSoC_2IY8”,“上传”:“2014-04-29T04:11:56.000Z”,“更新”:“2014-12-04T16:08:10.000Z”,“上传者”:“深夜”,“类别”:“喜剧”,“标题”:“与艾玛·斯通的口型大战”,“描述”:"吉米和艾玛·斯通在一场口型对决中对决,艾玛表现出她不怕闪电般的歌词。\n\n现在就订阅吉米·法伦主演的《今夜秀》:http://bit.ly/1nwT1aN\n\n观看吉米·法伦《周末骑士》11:35/10:35c主演的《今夜秀》\n了解更多吉米·法伦:\n下面是吉米:http://Twitter.com/JimmyFallon\我喜欢吉米:https://Facebook.com/JimmyFallon\n\n请观看吉米·法伦主演的《今夜秀》:\n观看《今夜秀》:http://Twitter.com/FallonTonight\就像今晚的节目:https://Facebook.com/FallonTonight\今晚节目Tumblr:http://fallontonight.tumblr.com/\n\n获取更多NBC:\nNBC YouTube:http://bit.ly/1dM1qBH\nLike NBC:http://Facebook.com/NBC\n以下是NBC:http://Twitter.com/NBC\nNBC Tumblr:http://nbctv.tumblr.com/\nNBC谷歌+:https://plus.google.com/+NBC/posts\n\n由吉米·法伦主演的《今夜秀》以该剧中的搞笑亮点为特色,包括:喜剧小品、音乐模仿、名人访谈、滑稽游戏,当然还有吉米的感谢信和标签!您还可以找到幕后视频和其他优秀的网络独家产品。\n\n与Emma Stone的IP同步之战\nhttp://www.youtube.com/fallontonight,“缩略图”:{“sqDefault”:http://i.ytimg.com/vi/bLBSoC_2IY8/default.jpg,“hqDefault”:http://i.ytimg.com/vi/bLBSoC_2IY8/hqdefault.jpg},“播放器”:{“默认”:http://www.youtube.com/watch?v=bLBSoC_2IY8&feature=youtube_gdata_player,“移动”:http://m.youtube.com/details?v=bLBSoC_2IY8},“内容”:{“5”:http://www.youtube.com/v/bLBSoC_2IY8?version=3&f=videos&d=AXyDziqd4CCanEZDalXV_C8O88HsQjpE1a8d1GxQnGDm&app=youtube_gdata","1":"rtsp://r7---sn-o097zuek.c.youtube.com/CkULENy73wIaPAmPIfYvoFKwbBMYDSANFEgGUgZ2aWRlb3NyIQF8g84qneAgmpxGQ2pV1fwvDvPB7EI6RNWvHdRsUJxg5gw=/0/0/0/video.3gp","6":"rtsp://r7---sn-o097zuek.c.youtube.com/CkULENy73wIaPAmPIfYvoFKwbBMYESARFEgGUgZ2aWRlb3NyIQF8g84qneAgmpxGQ2pV1fwvDvPB7EI6RNWvHdRsUJxg5gw=/0/0/0/video.3gp},“持续时间”:446,“aspectRatio”:宽屏,“评级”:4.9287434,“likeCount”:“279315”,“评级计数”:284381,“查看计数”:36983500,“收藏计数”:0,“评论计数”:12125,“访问控制”:{“评论”:“允许”,“评论投票”:“允许”,“视频回复”:“主持”,“评级”:“允许”,“嵌入”:“允许”,“列表”:“允许”,“自动播放”:“允许”,“辛迪加”:“允许”}

我尝试在php数组中获取数据循环运行正常,但变量没有值:

 foreach ($result->data as $item) {
 $title = is_null($subject) ? htmlentities($item->title) : htmlentities($item->video->title);
 $id = is_null($subject) ? $item->id : $item->video->id;
 $timestamp = is_null($subject) ? strtotime($item->uploaded) : strtotime($item->video->uploaded);
 $uploaded = date('M j, Y', $timestamp);
 $watch = is_null($subject) ? $item->player->default : $item->video->player->default;
 $image = is_null($subject) ? $item->thumbnail->sqDefault : $item->video->thumbnail->sqDefault;
 $description = is_null($subject) ? $item->description : $item->video->description;
 $viewCount = is_null($subject) ? $item->viewCount : $item->video->viewCount;
 $duration = is_null($subject) ? gmdate('H:i:s', intval($item->duration)) : gmdate('H:i:s',        intval($item->video->duration));
echo $id
echo $title
echo $description
?>

有什么问题吗?

您使用了错误的obj访问路径:

{"apiVersion":"2.1","data":{"id":"bLBSoC_2IY8","uploaded":"2014-04-etc..

foreach($obj->data as $item) {

将把“blBSoC_2IY8”、“2014-04-etc…”作为$item,它们只是字符串。
$item->任何东西都将失败,因为$item是字符串,而不是对象。

正如@Marc_B试图解释的那样,您需要循环键/值对,如:

foreach($result->data as $key=>$value) {
并查找您感兴趣的
$key

但是,如果数据始终包含一个结果,则可以跳过循环,只需执行以下操作:

echo $result->data->id;
echo $result->data->title;
echo $result->data->description;

您应该告诉我们问题是什么,然后我们帮助您解决它。问题是循环正在运行,但是title、id和其他变量没有被分配任何值var_dump$result或$item,其中是json_解码json的代码?$result=json_decode($request);