Tema: Fopen
Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/01/2008, 15:38
EstelaG
 
Fecha de Ingreso: enero-2008
Mensajes: 33
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Fopen

lo que pasa es que tengo varias clases, te muestro la que me parsea y donde tengo el problema:
class xml_pdf_parser
{

// Propiedades de la clase
var $manipulador;
var $archivo = '';
var $init_tag_map;
var $end_tag_map;

// Métodos de la clase
function abreTag($separador, $nombre, $attrs) {
if ($nombre_funcion = $this->init_tag_map[$nombre]) {
$this->manipulador->$nombre_funcion($attrs);
}
}

function cierraTag($separador, $nombre) {
//global $end_tag_map;
if ($nombre_funcion = $this->end_tag_map[$nombre]) {
$this->manipulador->$nombre_funcion();
}
}

// Analiza el archivo XML
function ComenzarAnalisis($ArchivoXML)
{
if (!$ArchivoXML) return;
$this->archivo = $ArchivoXML;
$separador_xml = xml_parser_create();
xml_set_object($separador_xml, &$this);
xml_parser_set_option($separador_xml, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($separador_xml, 'abreTag', 'cierraTag');
//abre el archivo XML
if (!($pa = fopen($this->archivo, 'r'))) {
die ('No se pudo abrir el archivo de entrada $archivo');
}

//lee el archivo y lo analiza
while ($dato = fread($pa, 4096)) {
if (!(xml_parse($separador_xml, $dato, feof($pa)))){
die(sprintf('Error XML: %s en la linea %d',
xml_error_string(xml_get_error_code($separador_xml )),
xml_get_current_line_number($separador_xml)));
}
//echo "Dato: $dato";

}

xml_parser_free($separador_xml);
} //fin de ComenzarAnalisis

} //fin de la clase