Замена тега со ссылкой на ссылку

567
28 ноября 2016, 18:46

мне в PHP нужно заменить строку

<img alt="" title="" src="/upload/rk/c3c/sale_prod.jpg" width="1920" height="474" style="border:0;" />

на /upload/rk/c3c/sale_prod.jpg

так как для картинок url будет для каждой свой, нужно написать регулярное выражение

я так понял нужно это сделать через str_replace.

Answer 1
$tag = '<img alt="" title="" src="/upload/rk/c3c/sale_prod.jpg" width="1920" height="474" style="border:0;" />';
$url= preg_replace("/^.*src=\"([^\"]*)\".*$/", "$1", $tag);
Answer 2

Такие задачи решаются с помощью регулярных выражений:

$input_string = '<img alt="" title="" src="/upload/rk/c3c/sale_prod.jpg" width="1920" height="474" style="border:0;" />';
echo preg_replace('/<img.*?src="(.*?)".*?>/i', '$1', $input_string);

Если вы будете решать ее с помощью обычной замены текста, то столкнетесь с проблемами, когда атрибуты width и height будут иметь другие значения.

Живой пример: repl.it/E9JO

READ ALSO
Куда смотреть? (апи постинг в группе)

Куда смотреть? (апи постинг в группе)

Ребят прошу помощи, так как не могу понять как реализовать постинг на стене в группе

371
Построение дерева на php

Построение дерева на php

Существует база данных с информацией об узлах сетиУ некоторых узлов есть дочерние узлы, а у тех в свою очередь могут быть еще дочерние

406
Синтаксис типа &hellip;$guards

Синтаксис типа …$guards

Что значит синтаксис типа public function handle($request, Closure $next,

435