Я использовал старую систему управления контентом, в которой используется CKEditor с CKFinder, которая позволяет загружать изображения на сервер, однако она помещает полный URL-адрес в поле содержимого, а затем я сохраняю его базы данных.PHP Изменить местоположение изображения
Я недавно перестроил систему управления контентом и снова использовал CKEditor с CKFinder. В настоящее время я перемещаю базу данных и переставляю данные. Но я заметил, что URL-адрес для этих изображений будет неправильным.
Итак, мой вопрос в том, можно ли искать и заменять URL-адрес и может быть несколько раз за строку? Также есть случайный хеш-ключ в середине, который я не слишком уверен, как обойти, и именно поэтому я задаю этот вопрос.
URL-адрес будет (неотредактированный)
http://www.oldwebsite.com/aknsnd8123nakndkna/upload/images/image.jpg
Я хотел бы, чтобы извлечь URL и изменить его путь:
http://www.newwebsite.com/images/uploaded/image.jpg
Я не знаю, как я хотел бы получить начальное и конец, в то время как пропуская среднюю часть. Или можно просто получить image.jpg в конце, и я положу новый путь в начале.
Пока что у меня есть только 2 строки кода, но в виду, что это HTML.
$content = '<h1>'.$page['Page_Title'].'</h1>';
$content .= $page['Page_Content'];
Это то, что $page['Page_Content']
возвращается:
<p style="text-align: center;">
<img alt="" src="http://www.oldwebsite.com/aknsnd8123nakndkna/upload/images/image.jpg" style="width: 700px; height: 493px;" />
</p>
<p style="text-align: center;">
The Sports Stadium is an impressive addition to any event, catering for several sports keeping children entertained for hours.
</p>
Вы не указали много информации ... Вы хотите написать сценарий миграции для изменения данных в какой-либо базе данных или системе хранения? –
Я пишу сценарий миграции на данный момент, я извлекаю данные из старой базы данных, переставляя их, а затем вставляя их в новую базу данных. То, о чем я прошу помощь, находится во время перегруппировки, прежде чем я отправлю его в новую базу данных. – Sickaaron
Поскольку все остальное кажется ясным ... Вам нужно найти библиотеку PHP для подключения к вашей базе данных (у PDO есть драйверы для нескольких движков), используйте DOMDocument или аналогичный парсер для извлечения ссылок из HTML и составления регулярного выражения для обработки фактические замены. –