SimpleXML es simple utilizar como sugiere su nombre. Sin embargo es un dolor cuando usted necesita comprobar el valor de un elemento que pueda o no pueda existir.

En cortocircuito usando �l en esquema de XML con los elementos opcionales es un dolor real. Pues SimpleXML crea solamente los objetos para los cuales los datos existen, usted tendr� que escribir c�digo feo cada vez para comprobar para saber si hay existencia de un objeto antes de usted el acceso su valor.

Usted no puede solucionarlo simplemente escribiendo un m�todo de la conveniencia. Deja para entender el problema y entonces lo solucionaremos.

La ventaja
SimpleXML es muy simple utilizar. Usted tiene acceso a elementos pues usted tendr�a acceso a una jerarqu�a del objeto:
$xml->Items [0] - m�s >Request [0] - >Error de los >Errors [0] - [0] - >Status

El problema
SimpleXML crea objetos solamente para los elementos de XML que tienen datos (y derecho tan). Esto lo hace eficiente. Sin embargo tambi�n hace m�s duro utilizar cuando su esquema es flexible con los elementos opcionales. Deja para tomar el ejemplo antedicho. Usted no puede tener acceso con seguridad a estado como arriba si los errores son un elemento opcional que est� solamente presente en que hay un error. Y usted no puede comprobar la existencia del estado como esto:
isset ($xml->Items [0] - m�s >Request [0] - >Error de los >Errors [0] - [0] - >Status)
porque los errores pueden no estar presentes. Para descubrirle tan si hay cualquier error primero tienen que comprobar la existencia de errores y entonces la existencia del estado (posiblemente) antes de que usted pueda comprobar realmente el estado. Y esto es verdad para cualquier profundidad de la jerarqu�a del objeto. Usted puede ver c�mo r�pidamente este bast�n hacer un dolor importante en el cuello. Tambi�n usted es muy probable faltar alguno y causar molestias del mantenimiento. El c�digo llega a ser unmaintainable tambi�n.

Soluci�n
Mi soluci�n es utilizar XPath para tales situaciones. Succintly le dice la disponibilidad y el valor (si est� disponible) de un campo.

Conclusi�n
SimpleXML conjuntamente con XPath es una manera muy de gran alcance de procesar sus datos de XML en el PHP.