PHP: uma maneira rápida e não RegEx de substituir SRC = atributo de uma tag IMG

Muitas vezes é útil ser capaz de trocar o src=atributo de uma tag HTML IMG sem perder nenhum dos outros atributos. Esta é uma maneira rápida e não regex de fazer isso. Ele usa a API PHP DOM para criar um pequeno documento HTML e, em seguida, salva o XML apenas para o elemento IMG.

function replace_img_src($original_img_tag, $new_src_url) {
$doc
= new DOMDocument();
$doc
->loadHTML($original_img_tag);

$tags
= $doc->getElementsByTagName('img');
if(count($tags) > 0)
{
$tag
= $tags->item(0);
$tag
->setAttribute('src', $new_src_url);
return $doc->saveXML($tag);
}

return false;
}

Nota : Nas versões do PHP posteriores a 5.3.6, $doc->saveXML($tag)pode ser alterado para $doc->saveHTML($tag).