PHP - Función XMLReader :: setParserProperty ()

Definición y uso

XML es un lenguaje de marcado para compartir los datos a través de la web, XML es legible tanto para humanos como para máquinas. La extensión XMLReader se utiliza para leer / recuperar el contenido de un documento XML, es decir, utilizando los métodos de la clase XMLReader puede leer cada nodo de un documento XML.

los XMLReader::setParserProperty() La función de la clase XMLReader acepta un valor entero que representa una propiedad (opción del analizador) y un valor booleano como parámetros y establece la opción / propiedad especificada en el lector actual.

Sintaxis

XMLReader::setParserProperty($property, $value);

Parámetros

No Señor Descripción de parámetros
1

property(Mandatory)

Este es un valor entero que representa la propiedad / opción que necesita establecer. Puede ser uno de los siguientes:

  • XMLReader::LOADDTD

  • XMLReader::DEFAULTATTRS

  • XMLReader::VALIDATE

  • XMLReader::SUBST_ENTITIES

2

value(Mandatory)

Este es un valor booleano que puede establecer la opción especificada para el lector pasando TRUE como valor a este parámetro.

Valores devueltos

Esta función devuelve un valor booleano que es VERDADERO en caso de éxito y FALSO en caso de falla. Cuando llama a esta función de forma estática, devuelve un objeto XMLReader en caso de éxito y FALSE en caso de error.

Versión PHP

Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de

XMLReader :: setParserProperty ()

función -

data.xml

<Data>
   <Employee>
      <Name>Krishna</Name>
      <Age>22</Age>
      <City>Hyderabad</City>   
   </Employee>

   <Employee>
      <Name>Raju</Name>
      <Age>30</Age>
      <City>Delhi</City>
   </Employee>
</Data>

sample.php

<?php
   //Creating an XMLReader
   $reader = new XMLReader();

   //Opening a reader
   $reader->open("data.xml");

   //Setting the parser property 
   $reader->setParserProperty(XMLReader::VALIDATE, true); 

   $bool = $reader->getParserProperty(XMLReader::VALIDATE); 
      
   if ($bool) { 
      print("Property is set"); 
   }

   //Closing the reader
   $reader->close();
?>

Esto producirá el siguiente resultado:

Property is set

Ejemplo

A continuación se muestra otro ejemplo de esta función:

<?php
   //Creating an XMLReader
   $reader = new XMLReader();

   $data = "<data> 
      <name>Raju</name> 
      <age>32</age> 
      <phone>9848022338</phone> 
      <city>Hyderabad</city>
   </data> ";

   //Opening a reader
   $reader->xml($data);

   //Setting the parser property 
   $reader->setParserProperty(XMLReader::SUBST_ENTITIES, true); 
   $reader->setParserProperty(XMLReader::LOADDTD, true); 
   $reader->setParserProperty(XMLReader::DEFAULTATTRS, true); 
   $reader->setParserProperty(XMLReader::VALIDATE, true); 

   $bool1 = $reader->getParserProperty(XMLReader::SUBST_ENTITIES); 
   if ($bool1) { 
       print("The SUBST_ENTITIES Property is set \n"); 
   } 
   
   $bool1 = $reader->getParserProperty(XMLReader::LOADDTD); 
   if ($bool1) { 
       print("The LOADDTD Property is set \n"); 
   } $bool1 = $reader->getParserProperty(XMLReader::DEFAULTATTRS); 
   
   if ($bool1) { 
       print("The DEFAULTATTRS Property is set \n"); 
   } $bool1 = $reader->getParserProperty(XMLReader::VALIDATE); 
   
   if ($bool1) { 
       print("The VALIDATE Property is set"); 
   } 
   
   //Closing the reader
   $reader->close();
?>

Esto producirá el siguiente resultado:

The SUBST_ENTITIES Property is set
The LOADDTD Property is set
The DEFAULTATTRS Property is set
The VALIDATE Property is set