2011-11-02 44 views
0

我有一个YouTube视频嵌入代码,看起来像这样:如何在PHP中执行此REGEX?

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

我需要添加以下(它摆脱的相关视频建议):

?rel=0 

的每个网址的结尾在嵌入代码中。所以在上面的例子中,最终的代码应该是这样的:

<iframe width="560" height="315" src="http://www.youtube.com/embed/XGdfNb15h9o?rel=0" frameborder="0" allowfullscreen></iframe> 

的嵌入代码被存储在一个名为$embed_code变量。我如何将嵌入代码转换为适用于它的?rel=0

回答

2

如果一切停留不变,你可以使用str_replace函数代替它会更快。

<?php 
$iframe = '<iframe width="560" height="315" src="http://www.youtube.com/embed/XGdfNb15h9o" frameborder="0" allowfullscreen></iframe>'; 
$pattern = '" frameborder="0"'; 
$replace = '?rel=0" frameborder="0"'; 

$iframe = str_replace($pattern,$replace, $iframe); 

echo $iframe; 

?> 
+0

工程。输出是板条猫的视频...大声笑 – xbonez

1

没有更多的信息或源代码,我不认为你需要正则表达式。为什么不这样做:

$embed_code.= "?rel=0"; 

在输出HTML之前?

+0

也许iframe的代码是从别的地方用户复制粘贴?这个问题是直接的imho – Evert

+0

@Adam Field变量包含整个iframe嵌入代码,而不仅仅是url。这就是他们存储在我正在使用的数据库中的方式。 – TK123

+2

IMO,OP意味着'$ embed_code'从'