Foros del Web » Programando para Internet » PHP »

Leer todos los XML de un directorio

Estas en el tema de Leer todos los XML de un directorio en el foro de PHP en Foros del Web. Hola como están, tengo que retomar el tema de los XML y me ha salido un problemita, necesito leer de un directorio todos los XML ...
  #1 (permalink)  
Antiguo 25/12/2019, 11:08
Avatar de dobled  
Fecha de Ingreso: enero-2002
Ubicación: Rancagua - Chile
Mensajes: 1.328
Antigüedad: 18 años
Puntos: 2
Leer todos los XML de un directorio

Hola como están, tengo que retomar el tema de los XML y me ha salido un problemita, necesito leer de un directorio todos los XML que tenga, despues mostrar un dato de cada XML.

Código:
while ($archivo = readdir($directorio)) //recorro los archivos del directorio
{
    if (is_dir($archivo))//verifico si es carpeta
    {
        echo "[".$archivo . "]<br />"; //si es carpeta la dejo con corchetes
    }
    else
    {
$leexml = simplexml_load_file($archivo);  //Abro el XML y le paso el nombre dinamicamente
echo "Asset: " . $Asset->Name; echo "<br>"; //muestro el dato

    }
}
El problema es que al pasar el nombre del achivo XML dinamicamente solo me lo abre una vez, a la segunda no hace nada, pero si pongo el archivo escrito me muestra tantas veces como existan XML, saben uds si hay que cerrar el objeto cuando abro el archivo XML o si simplexml_load_file necesita tener alguna caracteristica para abrir los archivos dinamicamente traidos de una variable?

Los dos codigos por separado funcionan sin problema, me lista todos los archivos XML y me muestra el dato del XML que necesito pero al juntarlos se ejecuta solo una vez.

no se si se entiende?
__________________
Usa títulos específicos y con sentido
En las listas de correo o en los grupos de noticias, la cabecera del mensaje es tu oportunidad de oro para atraer la atención de expertos cualificados en aproximadamente 50 caracteres o menos. No los desperdicies en balbuceos como "Por favor ayúdame" (de "POR FAVOR AYÚDAME!!!" ya ni hablamos). No intentes impresionarnos con lo profundo de tu angustia; mejor usa ese preciado espacio para una descripción lo más concisa posible del problema.
  #2 (permalink)  
Antiguo 26/12/2019, 15:55
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 9.994
Antigüedad: 11 años, 5 meses
Puntos: 2194
Respuesta: Leer todos los XML de un directorio

Estás usando $leexml para leer el archivo, sin embargo, en el echo usas $Asset y habría que ver si basta con cambiar una variable o saber si $Asset depende del contenido del XML.

Por otra parte, tal vez te convenga usar glob() para leer el directorio, pudiendo obtener solo archivos XML, evitando carpetas y otras extensiones.
__________________
- León, Guanajuato
- GV-Foto



La zona horaria es GMT -6. Ahora son las 08:26.