php - PHP中的iframe与来自SQL的字符串

标签 php regex string youtube

我正在尝试将YouTube视频链接转换为You Tube嵌入链接。一个字符串将从SQL接收YouTube链接,另一个代码将转换为嵌入链接,并且转换后的链接将在iframe中使用。我不知道为什么它不起作用。

YouTube转换器代码(我尝试使用以下任何一种:Link to Embed)

function convertYoutube($string) {
    return preg_replace(
        "/\s*[a-zA-Z\/\/:\.]*youtu(be.com\/watch\?v=|.be\/)([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)/i",
        "<iframe src=\"//www.youtube.com/embed/$2\" allowfullscreen></iframe>",
        $string
    );
}

从SQL接收YouTube链接的字符串
$row["link"]

最佳答案

如果执行此操作,您将看到嵌入的youtube视频。 $object是嵌入的YouTube网址。

<?php 
$url = "https://www.youtube.com/watch?v=RboEKl7GgU0";
parse_str( parse_url( $url, PHP_URL_QUERY ), $v );
$object = '<iframe width="560" height="315" src="https://www.youtube.com/embed/'.$v['v'].'" frameborder="0" allowfullscreen></iframe>';
echo $object;
?>

除了$url,您显然可以使用$row['link']

关于php - PHP中的iframe与来自SQL的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40855466/

相关文章:

regex - awk 提取文件中包含匹配模式和可变数字的行

c++ - 如何有效地用不同的整数元素替换 char 字符串的元素?

c# - 我应该使用 '==' 进行 .NET 本地化字符串比较吗?

导出表时 phpmyadmin "Error in processing request"- 错误代码 500

php - "Call to undefined method PHPUnit\Framework\TestSuite::sortId()"执行覆盖率测试用例时出错

configuration - 在 php.ini 中创建任意值

php - 自定义单选按钮显示里面的值(value)

swift - Swift 的正则表达式模式有一些差异

正则表达式:匹配单词中的 4 位数字

PHP:从链接标题中删除 `http://`