Как заменить часть url в тексте?

Для замены части URL в тексте в языке программирования PHP можно использовать различные подходы. Ниже представлены несколько примеров.

1. Использование функции str_replace():

$url = "https://www.oldwebsite.com/somepage.php";
$newUrl = str_replace("www.oldwebsite.com", "www.newwebsite.com", $url);
echo $newUrl;

Этот код заменяет "www.oldwebsite.com" на "www.newwebsite.com" в URL-адресе "https://www.oldwebsite.com/somepage.php". Результатом будет "https://www.newwebsite.com/somepage.php".

2. Использование регулярных выражений:

$url = "https://www.oldwebsite.com/somepage.php";
$newUrl = preg_replace("/www.oldwebsite.com/", "www.newwebsite.com", $url);
echo $newUrl;

Этот код также заменяет "www.oldwebsite.com" на "www.newwebsite.com" в URL-адресе "https://www.oldwebsite.com/somepage.php" с использованием регулярных выражений.

3. Использование функции parse_url():

$url = "https://www.oldwebsite.com/somepage.php";
$parsedUrl = parse_url($url);
if(isset($parsedUrl['host'])){
    $parsedUrl['host'] = str_replace('www.oldwebsite.com', 'www.newwebsite.com', $parsedUrl['host']);
}
$newUrl = http_build_url($parsedUrl);
echo $newUrl;

В этом случае мы разбираем URL-адрес на его компоненты с помощью функции parse_url(). Затем мы заменяем "www.oldwebsite.com" на "www.newwebsite.com" в компоненте 'host' и восстанавливаем URL-адрес с помощью функции http_build_url().

4. Использование библиотеки Guzzle:

use GuzzleHttpClient;

$client = new Client();
$response = $client->request('GET', 'https://www.oldwebsite.com/somepage.php');
$body = $response->getBody()->getContents();

$newBody = str_replace('www.oldwebsite.com', 'www.newwebsite.com', $body);
echo $newBody;

В этом случае мы используем библиотеку Guzzle для выполнения HTTP-запроса на URL-адрес "https://www.oldwebsite.com/somepage.php". Затем мы заменяем "www.oldwebsite.com" на "www.newwebsite.com" в полученном теле ответа.

Это лишь несколько примеров того, как можно заменить часть URL в тексте с использованием PHP. Выбор метода зависит от конкретной задачи и требований проекта.