<?php
$html_str = "<html>
<body>
Hi, this is the first image
<img src='image/example.jpg' />
this is the second image
<img src='http://s...content-available-to-author-only...s.com/data_images/out/14/8812836-green-light-abstract.jpg' />
and this is the last image
<img src='image/last.png' />
</body>
</html>" ;
$doc = new DOMDocument( ) ;
$doc -> loadHTML ( $html_str ) ;
$xp = new DOMXPath( $doc ) ;
$images = $xp -> query ( '//img[not(starts-with(@src, "http:") or starts-with(@src, "https:") or starts-with(@src, "data:"))]' ) ;
foreach ( $images as $img ) {
$img -> setAttribute ( 'src' , 'http://e...content-available-to-author-only...e.com/' . ltrim ( $img -> getAttribute ( 'src' ) , '/' ) ) ; }
$html = $doc -> saveHTML ( $doc -> documentElement ) ;
echo $html ;
PD9waHAKJGh0bWxfc3RyID0gIjxodG1sPgogICAgICAgICAgICA8Ym9keT4KICAgICAgICAgICAgICAgIEhpLCB0aGlzIGlzIHRoZSBmaXJzdCBpbWFnZQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSdpbWFnZS9leGFtcGxlLmpwZycgLz4KICAgICAgICAgICAgICAgIHRoaXMgaXMgdGhlIHNlY29uZCBpbWFnZQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSdodHRwOi8vcy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4ucy5jb20vZGF0YV9pbWFnZXMvb3V0LzE0Lzg4MTI4MzYtZ3JlZW4tbGlnaHQtYWJzdHJhY3QuanBnJyAvPgogICAgICAgICAgICAgICAgYW5kIHRoaXMgaXMgdGhlIGxhc3QgaW1hZ2UKICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0naW1hZ2UvbGFzdC5wbmcnIC8+CiAgICAgICAgICAgIDwvYm9keT4KICAgICAgICA8L2h0bWw+IjsKICAgICAgICAKJGRvYyA9IG5ldyBET01Eb2N1bWVudCgpOwokZG9jLT5sb2FkSFRNTCgkaHRtbF9zdHIpOwoKJHhwID0gbmV3IERPTVhQYXRoKCRkb2MpOwokaW1hZ2VzID0gJHhwLT5xdWVyeSgnLy9pbWdbbm90KHN0YXJ0cy13aXRoKEBzcmMsICJodHRwOiIpIG9yIHN0YXJ0cy13aXRoKEBzcmMsICJodHRwczoiKSBvciBzdGFydHMtd2l0aChAc3JjLCAiZGF0YToiKSldJyk7CmZvcmVhY2ggKCRpbWFnZXMgYXMgJGltZykgewogICAgJGltZy0+c2V0QXR0cmlidXRlKCdzcmMnLCAnaHR0cDovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycgLiBsdHJpbSgkaW1nLT5nZXRBdHRyaWJ1dGUoJ3NyYycpLCAnLycpKTsKfQokaHRtbCA9ICRkb2MtPnNhdmVIVE1MKCRkb2MtPmRvY3VtZW50RWxlbWVudCk7CgplY2hvICRodG1sOw==