【问题标题】:Error using simplexml_load_file() php使用 simplexml_load_file() php 时出错
【发布时间】:2016-11-09 00:27:14
【问题描述】:

我正在尝试在我的 PHP 页面中显示 youtube 结果。 我使用了函数simplexml_load_file(),它应该返回一个 XML 对象。

$link = "http://gdata.youtube.com/feeds/api/users/aliensabductedme/favorites";
$xml = simplexml_load_file($link);

我收到 HTTP 请求错误。 我知道 gdata.youtube.com 现在不起作用。 所以.. 有什么替代方法,这样我就可以使用simplexml_load_file() PHP 函数。

【问题讨论】:

  • 如果那个链接失效了,那就和php的功能无关了。

标签: php youtube-api


【解决方案1】:

Youtube 已更改其 xml 提要的 url...您可以通过查看播放列表中要获取其 url 的源代码来找到新的 url。只需在源码中搜索“playlist_id”,找到正确的id,然后使用下面格式的id作为$link

$link = "https://www.youtube.com/feeds/videos.xml?playlist_id=FLL8mk53VPSk5tKXixJq-FTA";
$xml = simplexml_load_file($link);

【讨论】:

  • 虽然代码通常不言自明,但仅包含代码且没有文字解释的答案会被标记为审核队列。您可以通过添加一两句解释来避免这种情况。
【解决方案2】:

不确定这是否仍然需要,但是当我将代码从 api-v2 迁移到 api-v3 时,我不再使用 simplexml

由于它现在需要用户、密钥和易于使用,我已切换到json_decode

示例:

$url_link = 'https://www.googleapis.com/youtube/v3/videos?part=snippet&id=[VIDEO_ID]&key=[API_KEY]';

$video = file_get_contents($url_link);
$data= json_decode($video, true);

$vid = $data['id'];

.............等等。

我更喜欢它。 (^-^)

【讨论】:

    猜你喜欢
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    相关资源
    最近更新 更多