Hola, estuve haciendo un código muy fácil de usar, es este:
Código PHP:
Ver original<?php
function mostrarCode
($a,$b,$c){if(eregi($a,$c)){$d=explode($a,$c);$d=$d[1];$d=explode($b,$d);$d=$d[0];return $a.$d.$b;}else{return false;}} function vecMostrar
($e,$a,$b){$vecMostrar['html']=$e;$vecMostrar['img']=false;while(strpos($vecMostrar['html'],$a)!==false){$vecMostrar['img'][]=mostrarCode
($a,$b,$vecMostrar['html']);$vecMostrar['html']=str_ireplace($vecMostrar['img'],'',$vecMostrar['html']);}return $vecMostrar;} ?>
cree 2 funciones:
- Función mostrarCode que simplemente retorna el primer elemento que encuentre que empiece con $desde y termine con $hasta
- Función vecMostrar que retorma un array con 2 posiciones, la primera es ['html'] que seria el codigo html sin las imágenes en este caso y ['img'] que retorna un array con todas las imágenes encontradas, cada imagen esta en una posición.
la función
vecMostrar no guarda imágenes repetidas en caso de que se usen varias veces una imagen.
para usar solo es asignar a una variable, ejemplo:
Código PHP:
Ver original$html = "<img src='http://vectorlatino.net/Img/Logo.png' alt='hola1'>Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí <b>Ejemplo aquí</b> Ejemplo aquí Ejemplo<img src='https://ssl.gstatic.com/images/icons/gplus-64.png' alt='hola2'> aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí <img src='http://vectorlatino.net/Img/social.png' alt='hola3'>Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí Ejemplo aquí";
$vector = vecMostrar($html,'<img', '>');
echo '<b>HTML original:</b> <hr>'.$html.'<hr>';
//para mostrar html limpio.
echo '<b>HTML sin imagenes: </b><hr>'.$vector['html'].'<hr>';
//para las imagenes
echo
'<b>hay '.count($vector['img']).' imagenes, la primera es : </b><hr>'. $vector['img'][0].'<hr>';
espero que te sirva, saludos.