Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/11/2005, 08:07
Apsol
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 23 años
Puntos: 4
Recuperar el HREF de una img

Hola, vamos intentarlo con otro nombre a ver si tiene mas respuestas.
Tengo 2 funciones, Una busca las imágenes de mi sitio y la otra busca las Urls que están apuntadas .
Mi problema es que tengo imágenes que no tienen urls asignadas. Y no se como fusionar estas 2 funciones para armar una que detecte las imágenes y ya de paso vea si tiene una url asignada y me la de también . como parte de una array bidimensional
Del tipo:
Path[foto1][url1];
Path[foto2][url2];
Path[foto3][url3];
…
Solo las que tienen url asignadas nada mas ..

Les dejo aca las funciones , esto escapa a mis conocimientos por el momento espero algún día dejar de preguntar estas cosas.. :)



Código PHP:
// Esta es la FUNC para detectar mis imagenes
function imagenesHTML($archivo, $norepetidos = true) 
{ 
$contenido = file($archivo); 
$contenido = array_map("trim", $contenido); 
$contenido = implode(" ", $contenido); 

if ( 
preg_match_all('/<img([^<>]+)>/i', $contenido, $match) ) { 
foreach(
$match[1] as $atributos) { 
if ( 
preg_match('/src="([^"]+)"/i', $atributos, $matchpaths) ) { 
$pathimgs[] = $matchpaths[1]; 
} elseif ( 
preg_match('/src=([^ ]+)/i', $atributos, $matchpaths) ) { 
$pathimgs[] = $matchpaths[1]; 
} 
unset(
$matchpaths); 
} 
} 
if ( !empty(
$pathimgs) ) { 
if (
$norepetidos) { 
return 
array_unique($pathimgs); 
} else { 
return 
$pathimgs; 
} 
} else { 
return 
false; 
} 
} 
// La url de mi sitio
$paths = imagenesHTML("http://www.misitio.com/");

////////////////////////////////



// Esta es la FUNC para detectar las Urls
function urlsHTML($archivo, $norepetidos = true) 
{ 
$contenido = file($archivo); 
$contenido = array_map("trim", $contenido); 
$contenido = implode(" ", $contenido); 

if ( 
preg_match_all('/<A([^<>]+)>/i', $contenido, $match) ) { 
foreach(
$match[1] as $atributos) { 
if ( 
preg_match('/HREF="([^"]+)"/i', $atributos, $matchpaths) ) { 
$pathimgs[] = $matchpaths[1]; 
} elseif ( 
preg_match('/HREF=([^ ]+)/i', $atributos, $matchpaths) ) { 
$pathimgs[] = $matchpaths[1]; 
} 
unset(
$matchpaths); 
} 
} 
if ( !empty(
$pathimgs) ) { 
if (
$norepetidos) { 
return 
array_unique($pathimgs); 
} else { 
return 
$pathimgs; 
} 
} else { 
return 
false; 
} 
} 
// La url de mi sito..
$paths = urlsHTML("http://www.misitio.com/"); 
Mil Graciasa a todos.
Apsol