Я выполняю str_replace для переменной, содержащей строку HTML. Цель состоит в том, чтобы добавить «data-rel =» external »target =" _ blank "" ко всем a-href's.Использование str_replace только при выполнении условий
$html = str_replace("<a href=", "<a data-rel=\"external\" target=\"_blank\" href=", $html);
Он отлично работает, но вот проблема: Если оригинал а-HREF является а-HREF = «электронная почта: [..], то он должен добавить„данные-отн =“внешний» целевой = "_System"»
. Пример:
<a href="http://apache.org">Link 1</a>
должны стать:
<a data-rel="external" target="_blank" href="http://apache.org">Link 1</a>
И
<a href="mailto:[email protected]">Link 2</a>
должны стать:
<a data-rel="external" target="_system" href="mailto:[email protected]">Link 2</a>
Любые идеи, как решить эту проблему?
Рассматривали ли вы использование [парсер XML] (http://php.net/manual/en/class.domdocument.php)? – Antony
Тогда используйте DOMDocument. –
Почему бы просто не сделать 2 поиска и заменить – dt192