Saltar al contenido

Compruebe si existe un nodo xml en PHP

Nuestros mejores investigadores han agotado sus reservas de café, en su búsqueda todo el tiempo por la resolución, hasta que David halló el hallazgo en GitHub así que en este momento la comparte aquí.

Solución:

Parece que un isset() simple resuelve este problema.


  
  
');
// var_dump($s) produces the same output as in the question, except for the object id numbers.
echo isset($s->problem_cause)  ? '+' : '-';

$s = new SimpleXMLElement('
  
');
echo isset($s->problem_cause)  ? '+' : '-';

huellas dactilares +- sin ningún mensaje de error/advertencia.

Usando el código que había publicado, este ejemplo debería funcionar para encontrar el nodo problem_cause en cualquier profundidad.

function xml_child_exists($xml, $childpath)

    $result = $xml->xpath($childpath); 
    return (bool) (count($result));


if(xml_child_exists($xml, '//problem_cause'))

    echo 'found';

else

    echo 'not found';

Aquí tienes las comentarios y puntuaciones

No se te olvide dar visibilidad a este ensayo si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *