首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在PHP中嵌入YouTube视频?

如何在PHP中嵌入YouTube视频?
EN

Stack Overflow用户
提问于 2009-01-05 07:12:33
回答 11查看 212.6K关注 0票数 58

谁能给我一个想法,我们如何显示或嵌入一个YouTube视频,如果我们只有网址或嵌入代码?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2009-01-05 07:30:26

你必须要求用户存储youtube视频中的11个字符的代码。

例如,http://www.youtube.com/watch?v=Ahg6qcgoay4

十一个字符的代码是: Ahg6qcgoay4

然后将这段代码放入数据库中。然后,无论您想在页面中放置youtube视频的任何位置,从数据库中加载字符,并放置以下代码:

例如,对于Ahg6qcgoay4,它将是:

<object width="425" height="350" data="http://www.youtube.com/v/Ahg6qcgoay4" type="application/x-shockwave-flash"><param name="src" value="http://www.youtube.com/v/Ahg6qcgoay4" /></object>
票数 92
EN

Stack Overflow用户

发布于 2011-09-30 06:36:17

从长的和短的youtube urls中,你都可以这样获得嵌入:

$ytarray=explode("/", $videolink);
$ytendstring=end($ytarray);
$ytendarray=explode("?v=", $ytendstring);
$ytendstring=end($ytendarray);
$ytendarray=explode("&", $ytendstring);
$ytcode=$ytendarray[0];
echo "<iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/$ytcode\" frameborder=\"0\" allowfullscreen></iframe>";

希望这能帮助到某个人

票数 17
EN

Stack Overflow用户

发布于 2009-01-08 07:25:22

watch?v=之后使用正则表达式提取“视频id”

将视频id存储在一个变量中,让我们将此变量命名为vid

从随机视频中获取嵌入代码,从嵌入代码中删除视频id,并将其替换为您获得的vid

我不知道如何在php中处理正则表达式,但应该不会太难

以下是python的示例代码:

>>> ytlink = 'http://www.youtube.com/watch?v=7-dXUEbBz70'
>>> import re
>>> vid = re.findall( r'v\=([\-\w]+)', ytlink )[0]
>>> vid
'7-dXUEbBz70'
>>> print '''<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/%s&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/%s&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>''' % (vid,vid)
<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/7-dXUEbBz70&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/7-dXUEbBz70&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>
>>>

正则表达式v\=([\-\w]+)捕获v=后面的(子)字符串和短划线

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/412467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档