PHP : Как заменить все IMG на A IMG
При создании галереи возникает необходимость заменить все теги на img на a imgвот пример кода выполняющий замену:
При создании галереи возникает необходимость заменить все теги на img на a img
вот пример кода выполняющий замену:
$pattern = "#<imgs[^>]*src=(["'])?([^s]+)\1[^>]*/?>#is"; $sourse = preg_replace( $pattern, '<a href="\2" rel="prettyPhoto[g1]"><img src="\2" class="imgbord"/></a>', $sourse);
Еще варианты патернов для выбора, разные модификации, выберите для себя свой:)
#$re = "#<img\ssrc=([\"'])?([^\s]+)\\1[^>]*\/?>#is"; #$re = "/<img\\s+src=([\"'])?((?(1).+?|[^\\s>]+))(?(1)\\1)[^>]+style=([\"'])?((?(1).+?|[^\\s>]+))(?(1)\\1)>/si"; $re = "/<img[^>]+src\\s*=\\s*[\"']\\/?([^\"']+)[\"'][^>]+style\\s*=\\s*[\"']\\/?([^\"']+)[\"'][^>]*\\>/m"; $sourse = preg_replace($re, '<a href="\\1" rel="prettyPhoto[g1]"><img src="\\1" class="imgbord" style="\\2" alt="'.$titl.'"/></a>', $sourse); $re = "/<img[^>]+src\\s*=\\s*[\"']\\/?([^\"']+)[\"']*\\>/m"; $sourse = preg_replace($re, '<a href="\\1" rel="prettyPhoto[g1]"><img src="\\1" class="imgbord" alt="'.$titl.'"/></a>', $sourse); //vibor img $regex = "/<img[^>]+src\s*=\s*[\"']\/?([^\"']+)[\"'][^>]*\>/"; #preg_match_all($regex, $sourse, $matches); preg_match_all('#<img.*src="(.*)".*>#isU', $sourse, $matches); $imcount = count($matches[1]); $allimg="<div id=\"imageview\">"; foreach($matches[1] as $item){ $allimg.="<a href=".$item." rel=\"prettyPhoto[gallery1]\"><img alt=".$titl." src=".$item."></a>"; } #<a href="example/cyan_hawk.jpg" rel="prettyPhoto[gallery1]" class="mws-gallery-btn"><i class="icon-search"></i></a> #"<img src = http://htmlweb.ru".$item.">" $allimg.="</div>"; $sourse=$sourse."<br><h4>Изображения [".$imcount."]: </h4><hr>".$allimg;<br>