Ver Mensaje Individual
  #12 (permalink)  
Antiguo 02/02/2012, 00:55
Avatar de Nemutagk
Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Recursividad?

Puedes crear un script que genere el xml cuando agregues una nueva carpeta con sus imagenes y sus archivos txt, con lo cual solo necesitas ejecutarlo una sola vez, y ya que este creado llamarlo y trabajar con el dom facilmente...
Código PHP:
Ver original
  1. <?php
  2. function getInfo($file,$type) {
  3.     $info = explode('.',$file);
  4.     if ($type=='name') {
  5.         return $info[0];
  6.     }else {
  7.         return $info[1];
  8.     }
  9. }
  10.  
  11. $path = 'url/a/la/carpeta';
  12. $dom = new DOMDocument('1.0', 'utf-8');
  13. $galerias = $dom->createElement('galerias');
  14. if ($openPath = opendir($path)) {
  15.     while($file = readdir($openPath)) {
  16.         if ($file != '.' && $file != '..') {
  17.            
  18.             if (getInfo($file,'type') == 'jpg') {
  19.                 $galeria = $dom->createElement('item');
  20.                 $name = getName($file);
  21.  
  22.  
  23.                 $imagen = $dom->createElement('imagen',$file);
  24.  
  25.                 $urlTxt = $path.'/'.getInfo($file,'name').'.txt';
  26.                 if (file_exists($urlTxt)) {
  27.                     $content = file_get_contents($urlTxt);
  28.                     $descript = $dom->createElement('decript',$content);
  29.                 }else {
  30.                     $descript = $dom->createElement('decript','not found');
  31.                 }
  32.                
  33.                 $galeria->appendChild($imagen);
  34.                 $galeria->appendChild($descript);
  35.                 $galerias->appendChild($galeria);
  36.             }
  37.            
  38.         }
  39.     }
  40. }
  41. close
  42.  
  43. $dom->appendChild($galerias);
  44. $dom->save('galerias.xml');

La forma en que funciona es que tanto la imagen como el txt deben tener el mismo nombre y estar en la misma carpeta, obviamente también debes indicar el url de la carpeta a leer y el nombre que tendra el xml
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)