所以我试图在我的网站中实现一个功能,让用户嵌入他们自己的视频。我一直在使用 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 将它放在一起的事实有关。
根据互联网,似乎没有其他人遇到这个问题,所以我不得不转向这里,因为我完全感到困惑。