La función xml_set_character_data_handler() establece un controlador de datos de caracteres para el analizador XML.
Esta función especifica la función que se llamará cuando el analizador encuentre datos de caracteres en el archivo XML.
Si tiene éxito, la función devuelve VERDADERO. Si falla, devuelve FALSO.
xml_set_character_data_handler(analizador,controlador)
parámetro | describir |
---|---|
analizador | Requerido. Especifica el analizador XML que se utilizará. |
entrenador de animales | Requerido. Especifica una función que se utilizará como controlador de eventos. |
La función especificada por el parámetro "handler" debe tener dos parámetros:
parámetro | describir |
---|---|
analizador | Requerido. Especifica una variable que contiene el analizador XML que llama al procesador. |
datos | Requerido. Especifica una variable que contiene datos de caracteres en forma de cadena en un archivo XML. |
Nota: El parámetro del controlador también puede ser una matriz que contenga referencias de objetos y nombres de métodos.
archivo XML
<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Recordatorio</heading><body>Don ¡No me olvides este fin de semana!</body></note>
código PHP
<?php$parser=xml_parser_create();función char($parser,$datos) { echo $datos; }xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml","r") ;mientras ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) o die (sprintf("Error XML: %s en la línea %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
La salida del código anterior se ve así:
Tove Jani Recordatorio ¡No me olvides este fin de semana!