我的php代码可以使用YouTube API正确检索标题,视频网址,观看次数,视频日期,上次评论日期以及说明的前160个字符。我似乎无法弄清楚如何获得整个描述。我知道它在xml中检索到了,因为我已经抛弃了它。那我怎么才能得到160个字符呢?
整个描述被截断为157个字符,并且添加了“...”,所以当我回显它或var_dump它时,它是160个字符。这是我完整的测试代码(没有标题,视频网址等)。
<?php
$feedURL = 'http://gdata.youtube.com/feeds/api/videos?q=phone&v=2&fields=entry[yt:statistics/@viewCount > 10000]&start-index=1&max-results=1';
$sxml = simplexml_load_file($feedURL);
foreach ($sxml->entry as $entry) {
$media = $entry->children('http://search.yahoo.com/mrss/');
echo $media->group->description;
}
?>
这是页面上显示的内容:
免费TuTiTu游戏:http://www.tutitu.tv/index.php/games免费TuTiTu的着色页面:http://www.tutitu.tv/index.php/coloring加入我们的Facebook:https ...
当我以这种方式获得xml时:
gdata.youtube.com/feeds/api/videos/JI-5kh_4gO0?v=2&alt=json-in-script&callback=youtubeFeedCallback&prettyprint=true
整个说明如下:
"media$description": {
"$t": "FREE TuTiTu's Games: http://www.tutitu.tv/index.php/games\nFREE TuTiTu's Coloring pages at: http://www.tutitu.tv/index.php/coloring\nJoin us on Facebook: https://www.facebook.com/TuTiTuTV\nTuTiTu's T-Shirts: http://www.zazzle.com/TuTiTu?rf=238778092083495163\n\nTuTiTu - The toys come to life\n\nTuTiTu - \"The toys come to life\" is a 3D animated television show targeting 2-3 year olds. Through colorful shapes TuTiTu will stimulate the children's imagination and creativity. On each episode TuTiTu's shapes will transform into a new and exciting toy.",
"type": "plain"
},
我确定我遗漏了一些基本的东西,但是当我寻找解决方案时,我还没有找到它。
感谢您的帮助。
答案 0 :(得分:3)
这两种不同类型的API请求将返回不同的描述大小。 我认为这是一种限制总响应大小的方法。
1)按照http://gdata.youtube.com/feeds/api/videos?q=phone&v=2&fields=entry&alt=json&prettyprint=true
进行搜索,将返回短视频说明
2)按照以下方式执行视频请求:http://gdata.youtube.com/feeds/api/videos/JI-5kh_4gO0?v=2&alt=json&prettyprint=true
将返回长视频说明。
BTW:api版本3允许您在1个请求中请求视频ID的列表(以获取他们的详细说明)。
答案 1 :(得分:1)
$media->group->{'media$description'}
应该做的伎俩