0

所以我试图在我的网站中实现一个功能,让用户嵌入他们自己的视频。我一直在使用 PHP,因为它过去对我有其他类似的目标。

$find = array("[video]","[/video]");
$replace = array("<iframe width='560' height='315' src='","' frameborder='0' allowfullscreen></iframe>");
echo str_replace($find,$replace,"" . nl2br("" . htmlspecialchars($forumPost) . "") . "");

这两部分代码取自 YouTube 的“嵌入”选项,并经过简单的组织,以便用户可以输入他们想要的任何 YouTube URL 并显示视频。

但是,当我用这个嵌入代码(取自 YouTube)测试它时遇到了一个问题:

<iframe width='560' height='315' src='http://www.youtube.com/embed/oPmUjjo02bg' frameborder='0' allowfullscreen></iframe>

奇怪的是,当我将它直接嵌入到源代码中时,这个测试可以完美运行,但是当 PHP 将相同的确切代码拼凑在一起时,页面中会留下一个空白框——在这种情况下,当我将它输入到像这样的论坛:

[video]http://www.youtube.com/watch?v=oPmUjjo02bg[/video]

我已经三重检查了拼写或 URL 本身没有错误,所以它肯定与 PHP 将它放在一起的事实有关。

根据互联网,似乎没有其他人遇到这个问题,所以我不得不转向这里,因为我完全感到困惑。

4

1 回答 1

1

这是因为您使用的不是嵌入 URL ( http://www.youtube.com/embed/oPmUjjo02bg ),而是视频完整 URL ( http://www.youtube.com/watch?v=oPmUjjo02bg )。

您必须更改链接才能使嵌入工作。

于 2013-03-23T14:55:35.943 回答