更改 iframe 中的 youtube shortened url 值
Change youtube shortened url value in iframe
我正在使用高级自定义归档 wordpress 插件创建一个名为 youtube 的元标记 URL...
当有人将视频 url 设置为这样的较短格式时 https://youtu.be/H-30B0cqh88
然后我用来显示视频的 iframe 不起作用,因为 iframe 不适用于 url
的较短版本
它需要真正的 url 作为来源。我的 iframe 代码如下
">
我怎样才能实现这个..让我告诉你我想如何实现这个..
我不是 php 方面的专家所以请给我完整的工作代码..
<?php
the_field("listing_video_1") == $got_url_from_user_input
if $got_url_from_user_input == https://youtu.be/H-30B0cqh88 in this format
$actual_URL= replace above url to https://youtube.com/embed/H-30B0cqh88
?>
请问我该如何实现。
提前致谢
这是使用 preg_replace
完成您想要完成的任务的简单方法:
<?php
// SET OUR DEFAULT URL
$got_url_from_user_input = 'https://youtu.be/H-30B0cqh88';
print "\nSTARTING URL: ".$got_url_from_user_input;
// DO THE REPLACE AND PRINT OUT THE FINAL RESULT
$actual_URL = preg_replace('~https://youtu\.be/([-A-Z0-9]+)~i', 'https://youtube.com/embed/', $got_url_from_user_input);
print "\nFINAL URL: ".$actual_URL;
这里没有太多魔法,所以让我 运行 快速了解一下:
https://youtu\.be/
- 准确查找此模式。我们用反斜杠对点进行转义,以便它找到文字点而不是任何字符。
([-A-Z0-9]+)
- 这只是您的基本字符 class 匹配任何破折号、字母或数字,至少出现一次。我们把它放在括号中,以便我们将它保存在
中,我们可以将它插入我们最终的 url.
上面的代码在你可以看一看的工作演示中:
您可以使用 php str_replace()
函数,如下代码所示:
<?php
$actual_url = str_replace('https://youtu.be/', 'https://www.youtube.com/embed/', $got_url_from_user_input);
echo $actual_url;
?>
str_replace()
将用 embade url.
替换 youtube short url
我正在使用高级自定义归档 wordpress 插件创建一个名为 youtube 的元标记 URL...
当有人将视频 url 设置为这样的较短格式时 https://youtu.be/H-30B0cqh88
然后我用来显示视频的 iframe 不起作用,因为 iframe 不适用于 url
的较短版本它需要真正的 url 作为来源。我的 iframe 代码如下
">我怎样才能实现这个..让我告诉你我想如何实现这个..
我不是 php 方面的专家所以请给我完整的工作代码..
<?php
the_field("listing_video_1") == $got_url_from_user_input
if $got_url_from_user_input == https://youtu.be/H-30B0cqh88 in this format
$actual_URL= replace above url to https://youtube.com/embed/H-30B0cqh88
?>
请问我该如何实现。
提前致谢
这是使用 preg_replace
完成您想要完成的任务的简单方法:
<?php
// SET OUR DEFAULT URL
$got_url_from_user_input = 'https://youtu.be/H-30B0cqh88';
print "\nSTARTING URL: ".$got_url_from_user_input;
// DO THE REPLACE AND PRINT OUT THE FINAL RESULT
$actual_URL = preg_replace('~https://youtu\.be/([-A-Z0-9]+)~i', 'https://youtube.com/embed/', $got_url_from_user_input);
print "\nFINAL URL: ".$actual_URL;
这里没有太多魔法,所以让我 运行 快速了解一下:
https://youtu\.be/
- 准确查找此模式。我们用反斜杠对点进行转义,以便它找到文字点而不是任何字符。([-A-Z0-9]+)
- 这只是您的基本字符 class 匹配任何破折号、字母或数字,至少出现一次。我们把它放在括号中,以便我们将它保存在中,我们可以将它插入我们最终的 url.
上面的代码在你可以看一看的工作演示中:
您可以使用 php str_replace()
函数,如下代码所示:
<?php
$actual_url = str_replace('https://youtu.be/', 'https://www.youtube.com/embed/', $got_url_from_user_input);
echo $actual_url;
?>
str_replace()
将用 embade url.