0

我正在尝试做一些非常奇怪的事情,我有一些运气,但遇到了一些障碍。我基本上已经完成了它的第一部分,现在我只需要全面翻译它。这与 WordPress 有关,但它是与特定于 WP 的一般概念问题,所以我决定在这里问它。

基本上,我想要做的是解析一个变量,并用其他东西替换一些代码,如果它存在(对于 WP 用户,我试图通过 the_content() 来解析,一个替换位基于一些条件)。

我正在解析一个名为$content. 里面的某个地方$content将是一个标准的 YouTube 嵌入代码<iframe src="http://www.youtube.com/embed/xxxxxxxxx" frameborder="0" width="560" height="315"></iframe>等。我的目标是获取 xxxxxx 值,然后用锚替换整个<iframe><img>

我有正则表达式来获取 YouTube 视频 ID,并且可以毫无问题地回显图像。我用了:

if (preg_match('(/embed/([a-z0-9A-Z]+))', $content, $output) > 0) {
        echo("<img src='http://img.youtube.com/vi/".$output[1]."/0.jpg' alt=' ' />");
    }

它返回在 中找到的 YouTube 视频的缩略图$content。我无法将此正则表达式转换为 a preg_replace,以便我可以将<iframe>in 更改为 an <img src='http://img.youtube.com/vi/xxxxxxxxx/0.jpg />。这可能吗?

如果有人能指出我正确的方向,我会很高兴。

谢谢!

特雷

4

1 回答 1

0

我讨厌这么快就这样做。但是,我似乎已经解决了我的问题。

来到这里并输入它并清除我的思绪似乎在这里和那里都有帮助。

我能够用这段代码完成它(我敢肯定这很丑):

        $the_id = preg_match('(/embed/([a-z0-9A-Z]+))', $content, $output);
        $replacement = "<img src='http://img.youtube.com/vi/".$output[1]."/0.jpg' alt=' ' />";

        $content = preg_replace("/<iframe.*?<\/iframe>/si", $replacement, $content);
        echo $content;
于 2012-04-17T09:57:48.390 回答