更改 youtube url 以在 php 中嵌入 url [英] change youtube url to embed url in php

查看:35
本文介绍了更改 youtube url 以在 php 中嵌入 url的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我找到了这个代码(交换所有要嵌入的 youtube 网址通过 preg_replace()) 交换 youtube 网址 (http://www.youtube.com/watch?v=CfDQ92vOfdchttp://www.youtube.com/v/CfDQ92vOfdc) 到 youtube 嵌入网址 (http://www.youtube.com/embed/CfDQ92vOfdc) 但它似乎不起作用?有任何想法吗?我对正则表达式了解不多.

I found this code (Swap all youtube urls to embed via preg_replace()) to swap youtube urls (http://www.youtube.com/watch?v=CfDQ92vOfdc, or http://www.youtube.com/v/CfDQ92vOfdc) into youtube embed urls (http://www.youtube.com/embed/CfDQ92vOfdc) but it doesn't seem to be working? Any ideas? I don't know much about regular expression.

代码如下:

$string     = 'http://www.youtube.com/watch?v=CfDQ92vOfdc';
$search     = '#<a (?:.*?)href=["\\\']http[s]?:\/\/(?:[^\.]+\.)*youtube\.com\/(?:v\/|watch\?(?:.*?\&)?v=|embed\/)([\w\-\_]+)["\\\']#ixs';
$replace    = 'http://www.youtube.com/embed/$2';
$url        = preg_replace($search,$replace,$string);

但它仍然显示为:

http://www.youtube.com/watch?v=CfDQ92vOfdc

代替:

http://www.youtube.com/embed/CfDQ92vOfdc

提前致谢.

推荐答案

要么改变

$string = 'http://www.youtube.com/watch?v=CfDQ92vOfdc';

$string = '<a href="http://www.youtube.com/watch?v=CfDQ92vOfdc" ></a>';

$search     = '#<a (?:.*?)href=["\\\']http[s]?:\/\/(?:[^\.]+\.)*youtube\.com\/(?:v\/|watch\?(?:.*?\&)?v=|embed\/)([\w\-\_]+)["\\\']#ixs'; 

$search     = '#(.*?)(?:href="https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch?.*?v=))([\w\-]{10,12}).*#x';

这篇关于更改 youtube url 以在 php 中嵌入 url的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆