Foros del Web » Programando para Internet » PHP »

eliminar todos los hijos de un nodo

Estas en el tema de eliminar todos los hijos de un nodo en el foro de PHP en Foros del Web. quiero eliminar todos los hijos de un nodo pero siempre se elimina el nodo padre, pongo codigo. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código XML: Ver original <empresa > ...
  #1 (permalink)  
Antiguo 19/04/2018, 08:45
 
Fecha de Ingreso: agosto-2011
Mensajes: 297
Antigüedad: 6 años, 9 meses
Puntos: 5
eliminar todos los hijos de un nodo

quiero eliminar todos los hijos de un nodo pero siempre se elimina el nodo padre, pongo codigo.


Código XML:
Ver original
  1. <empresa>
  2.     <trabajador id='cargo-33'>
  3.          <nombre>andre</nombre>
  4.          <edad>24</edad>
  5.      </trabajador>
  6.     <trabajador id='cargo-12'>
  7.          <nombre>ana</nombre>
  8.          <edad>22</edad>
  9.      </trabajador>
  10. </empresa>
Código PHP:
Ver original
  1. $padre=$xml->getElementById('cargo-33');
  2. $xml->documentElement->removeChild($padre);

lo que pretendo es eliminar solo los hijos del nodo trabajador con cargo-33 quedando asi el xml.

Código XML:
Ver original
  1. <empresa>
  2.     <trabajador id='cargo-33'>
  3.      </trabajador>
  4.     <trabajador id='cargo-12'>
  5.          <nombre>ana</nombre>
  6.          <edad>22</edad>
  7.      </trabajador>
  8. </empresa>

añadir que el archivo puede contener mas hijos pero en todos los casos quiero eliminar todos los hijos.
saludos

Última edición por primary; 19/04/2018 a las 08:57
  #2 (permalink)  
Antiguo 20/04/2018, 22:38
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.796
Antigüedad: 8 años, 8 meses
Puntos: 212
Respuesta: eliminar todos los hijos de un nodo

Saludo

Podría ser algo así:

Código PHP:
Ver original
  1. $trabajador = $trabajadores->getElementsByTagName('trabajador')->item(0);
  2. $trabajadores->removeChild($trabajador);
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com



La zona horaria es GMT -6. Ahora son las 23:01.