Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要使用PHP将一个链接转换为另一个链接_Php_Hyperlink - Fatal编程技术网

需要使用PHP将一个链接转换为另一个链接

需要使用PHP将一个链接转换为另一个链接,php,hyperlink,Php,Hyperlink,我有一个youtube链接,例如:http://www.youtube.com/watch?v=3aICB2mUu2k 我需要使用PHP以这种方式对其进行转换:http://www.youtube.com/e/3aICB2mUu2k 我需要用/e/替换wathc?v= 我该怎么做 谢谢请参见PHP手册中的preg_replace: 在您的评论后添加: 使用 也许对你来说更简单: $url = 'http://www.youtube.com/watch?v=3aICB2mUu2k'; $url

我有一个youtube链接,例如:
http://www.youtube.com/watch?v=3aICB2mUu2k

我需要使用PHP以这种方式对其进行转换:
http://www.youtube.com/e/3aICB2mUu2k

我需要用
/e/
替换
wathc?v=

我该怎么做


谢谢

请参见PHP手册中的preg_replace:

在您的评论后添加:
使用

也许对你来说更简单:

$url = 'http://www.youtube.com/watch?v=3aICB2mUu2k';

$url = str_replace('wathc?v=', '/e/', $url);

在您在RiaD的回复中发表评论后,我建议:

<?php
$url = 'http://www.youtube.com/watch?v=3aICB2mUu2k&feature=related';
parse_str(parse_url($url, PHP_URL_QUERY), $query);
$url = 'http://youtube.com/e/' . $query['v'];

在这种情况下,正则表达式可能有点过头了。IIRC PHP手册建议使用字符串函数,而不是正则表达式函数,用于非常基本的字符串操作。感谢它的成功。但是现在我还需要删除后面的所有内容&。例如,应该使用PHP的strps函数。e、 a.$old='youtube.com/e/fIL7Nnlw1LI&feature=related'$位置=STRPO($old,&');echo$position;//打印:25$new=substr($old,0,$position);echo$new;//打印:youtube.com/e/fil7nnlwli
$url = 'http://www.youtube.com/watch?v=3aICB2mUu2k';

$url = str_replace('wathc?v=', '/e/', $url);
<?php
$url = 'http://www.youtube.com/watch?v=3aICB2mUu2k&feature=related';
parse_str(parse_url($url, PHP_URL_QUERY), $query);
$url = 'http://youtube.com/e/' . $query['v'];