Я ищу простой и эффективный способ удалить конкретное изображение из статьи.Все, что я знаю, это URL-адрес изображения, которое мне нужно удалить.
- Изображение может использовать или не использовать другие атрибуты.
- Изображение может или не может вообще существовать в статье.
- Возможно, в этой статье могут быть другие изображения (кроме URL).
Мой выбор: регулярное выражение или DOMDocument
, возможно, с использованием HTML5синтаксический анализатор, такой как https://github.com/Masterminds/html5-php.
Мои навыки регулярных выражений не так хороши, и я не уверен, является ли хорошей идеей использовать регулярные выражения для достижения этой цели, потому что я читал, что следует избегать регулярных выражений для анализа HTML.Что я имею до сих пор с regex, так это удаление полного изображения, но не знаю, как удалить его на основе определенного URL-адреса src.
$img_src = 'http://www.example.org/image_to_be_removed.jpg';
$article = '<h1>Test article with HTML5 tags</h1>
<nav><a href="/link1/">Link 1</a></nav>
<p>This is an example article. The article may or may not include html5 tags, images and other things.</p>
<img src="http://www.example.org/image_to_be_removed.jpg">
<p>More example text.</p>';
$article = preg_replace("/<img[^>]+\>/i", "", $article);
echo $article;
Я еще не копался в решении DOMDocument,потому что я не уверен, возможно ли это вообще или регулярное выражение может считаться лучшей практикой?