PHP:替换url的第一部分
我想更改我的url的第一部分 我有这个网址PHP:替换url的第一部分,php,Php,我想更改我的url的第一部分 我有这个网址 www.website.com/download/long-file-name-123 我想把下载部分改成这样的下载 www.website.com/downloads/long-file-name-123 问题是url也可能是这样的: www.website.com/download/files/file/long-file-name-123 所以我需要一些方法来始终只更改url的第一部分 <?php echo str_replace("
www.website.com/download/long-file-name-123
我想把下载部分改成这样的下载
www.website.com/downloads/long-file-name-123
问题是url也可能是这样的:
www.website.com/download/files/file/long-file-name-123
所以我需要一些方法来始终只更改url的第一部分
<?php
echo str_replace("download","downloads","www.website.com/download/long-file-name-123");
?>
现场演示:
到目前为止你做了什么?我想你可能会发现parse_url很有用。这个url是你接收请求的网站地址,还是其他网站(例如用于cURL请求的网站)?我有这个url-那不是url;以scheme f.e.http开头,后跟冒号:等等。F.e。http://www.website.com/download/long-file-name-123.
<?php
$urls = array("www.website.com/download/long-file-name-123","www.website.com/download/files/file/long-file-name-123");
$arrlength = count($urls);
for($x = 0; $x < $arrlength; $x++)
{
$pos = strpos($urls[$x], "download");
if ($pos !== false) {
$newstring = substr_replace($urls[$x], "downloads", $pos, strlen("download"));
echo ($newstring);
echo ("\n");
}
}
?>
www.website.com/downloads/long-file-name-123
www.website.com/downloads/files/file/long-file-name-123
php > $url = 'www.website.com/download/long-file-name-123';
php > $newUrl = str_replace('www.website.com/download', 'www.website.com/downloads', $url);
php > var_dump($newUrl);
string(44) "www.website.com/downloads/long-file-name-123"