0

我有一个示例代码:

<?php
$url = 'http://www.youtube.com/watch?v=KTRPVo0d90w';
$pattern = '/http:\/\/www\.youtube\.com\/watch\?(.*?)v=([a-zA-Z0-9_\-]+)(\S*)/i';
$replace = $pattern.'&w=550';
$string = preg_replace($pattern, $replace, $url);
?>

结果如何是http://www.youtube.com/watch?v=KTRPVo0d90w&w=550

4

4 回答 4

2

您可以使用.运算符附加:

<?php
$url = 'http://www.youtube.com/watch?v=KTRPVo0d90w';
$string = $url.'&w=550';
?>
于 2013-08-05T02:57:10.610 回答
0

改用preg_match

<?php
    $url = 'http://www.youtube.com/watch?v=KTRPVo0d90w&s=222';
    $pattern = '/v=[^&]+/i';
    preg_match($pattern, $url, $match);
    echo 'http://www.youtube.com/watch?'.$match[0].'&w=550';
?>
于 2013-08-05T03:13:44.913 回答
0

不要误会我的意思,我不希望在这里获得任何分数,但只是想我会添加到这个问题并包括一些选项。我喜欢偶尔玩弄这样的想法。

使用jh314 的想法来连接字符串,认为这可以用于将来使用,以实际替换视频的 YouTube 号码中的字符串,如果场合出现的话。

比如$number比如说。

<?php

$url = 'http://www.youtube.com/watch?v=';
$number = 'KTRPVo0d90w';
$string = $url.$number.'&w=550';

// Output to screen
echo $string;

echo "<br>";

// Link to video
echo "<a href=\"$string\">Click for the video</a>";

?>

对于视频的宽度,同样可以轻松完成。

于 2013-08-05T03:34:45.267 回答
0

像下面这样?

$url = 'http://www.youtube.com/watch?v=KTRPVo0d90w';
$bit = '&w=550';
echo "${url}${bit}";
于 2013-08-05T03:44:22.203 回答