我致力于将YouTube视频网址转换为使用iframe为社交网络脚本嵌入HTML代码的功能,这种功能完美无缺......但是,当有人发布多个视频链接时,这是一个真正的破坏,并且有多个嵌入视频
function YoutubeURLtoEmbed {
$search = '#<a(.*?)(?:href="https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch?.*?v=))([\w\-]{10,12}).*<\/a>#x';
$replace = '<iframe width="500" height="300" src="http://www.youtube.com/embed/$2" frameborder="0" allowfullscreen></iframe>';
$text = preg_replace($search, $replace, $text);
return $text;
}
我的问题是:有没有办法限制链接的数量可以转换为嵌入视频,并在此限制后返回视频链接?
感谢您将来的帮助。
答案 0 :(得分:0)
preg_replace()
有第四个参数$limit
,请使用它!
混合 preg_replace(混合 $模式,混合 $替换,混合 $ subject [, int $ limit = -1 [, int &amp; $ count]])
因此,例如,如果您只想替换可能使用的前3个出现位置:
$text = preg_replace($search, $replace, $text, 3);