Código fuente de análisis de archivos XML
1. Carga dinámica y paginación de xml php
//$ this-gt;$vars, $cookie);
$ this-gt; ;outPut($vars, $cookie);
}
//función _shoplist_res(){
//$ this- gt d B- gt; ;close();
//}
Salida de función ($vars, $cookie){
/* $ str query = " select count(* ) como RC de ". $this-gt;db_c-gt;Db_Pre. "Pedidos de taller por id desc";
$ this- gt; d B- gt; consulta ($ str query);
$ recuento de registros = $ this- gt ;d B - gt; assoc();
$ recuento de registros = $ recuento de registros[' RC '];
@ $ this- gt; /
$ RecordCount = 25
if(empty($ vars[' pageNo '])$ vars[' pageNo ']= 1;
if( vacío($ vars[' pageSize '])$ vars[' pageSize ']= 10;
$ recuento de páginas = ceil($ recuento de registros/$ vars[' pageSize ']);
if($ vars[' pageSize '] gt; $ recuento de registros)$ vars[' pageSize ']= $ recuento de registros
if($ vars[' pageNo '] gt ;$page; count)$vars['page no']=$recuento de páginas;
$xmlStr. = "lt? xml version=\"1.0\" codificación=\"GBK\"?>. "\n ";
$xmlStr. = "ltStoreList>".
$xmlStr. = "\t ltPageno = \"$vars[' pageno']. " \ "pagesize = \ "$ vars ['tamaño de página']. \ " total = \ "$ recordcount. " \ " > lt/herramienta de cambio de página > "" \ n ";
$xmlStr. = "\t ltPageNumber>; ". $vars['pageNo']. "\t ltPageNumber>";
$xmlStr. >".$vars['pageSize']."lt/page size>"."\n" ;
$xmlStr.="\tltnumber>".$RecordCount."lt/number >"."\n";
$xmlStr. = "\tltpágina>". $Recuento de páginas. "lt/número de página>".
"\n";
//$strQuery = "seleccione t1.*,t2.*de". $this-gt;db_c-gt;Db_Pre. pshop como t1. $this-gt;db_c-gt;Db_Pre. "El tipo de tienda es t2, donde t1.typenum=t2.typenum está ordenado por id desc"
// "Límite". ($vars[' número de página ']-1)* $vars[' tamaño de página ']. ",".$ vars[' pageSize '];
//die($ str query);
//$ this- gt; consulta str);
/* while($ resultado = $ this- gt; d B- gt; Assoc()){
$xmlStr. = "\t". "\n";
$xmlStr. = "\t ltstore>". "\n";
$xmlStr. = " \ t \ t ltNombre > lt![CDATA[". $resultado['Nombre de la tienda']. "]] gt; lt/Nombre >". "\n";
$xmlStr. = " \ t \ t lt operador > lt! [CDATA[". $resultado['jefe de tienda']. "]] gt; lt/Operador >". "\n";
$xmlStr. = "\t\tltlevel>lt![CDATA[". $resultado['tipo de tienda']. "]] gt; lt/nivel >". "\n";
$xmlStr. = "\t\tltIntroducción>lt![CDATA[". $resultado['introducción a la tienda']. "]] gt; lt/Introducción>". "\n";
$xmlStr. = "\t\tltDirección de conexión>lt![CDATA[personal_shop.php?id=". $resultado['id']. "]] gt;lt/dirección de conexión>". "\n";
$xmlStr. = "\t lt/tienda>". "\n";
}*/
$ sc = $ vars[' pageNo ']* $ vars[' pageSize '];
if( $ sc gt; $ recuento de registros)$ sc = $ recuento de registros;
for($ I =($ vars[' pageNo ']-1)* $ vars[' pageSize ']; $ i lt $ sc$i ){
$xmlStr. = "\t". "\n";
$xmlStr. = "\t ltstore>". "\n";
$xmlStr. = "\t\t ltName>lt![CDATA[Este es el nombre: ". $i."]]> lt/Nombre >". "\n";
$xmlStr. = "\t\t ltoperator>lt![CDATA[Este es el operador:". $i."]]> lt/Operador >".
"\n";
$xmlStr. = "\t\t ltlevel>lt![CDATA[Este es el nivel:". $i."]]> lt/nivel >". "\n";
$xmlStr. = "\t\tltIntroducción>lt![CDATA[Esta es la introducción:". $i."]]> lt/Introducción>". "\n";
$xmlStr. = "\t\tltDirección de conexión>lt![CDATA[personal_shop.php?id=". $i."]]> lt/dirección de conexión>". "\n";
$xmlStr. = "\t lt/tienda>". "\n";
}
$xmlStr. = "lt/lista de tiendas>". "\n";
header(" Tipo de contenido: texto/XML \ n \n ");
echo $xmlStr
}
}
$ lista de tiendas = nueva lista de tiendas_RES($vars,$HTTP_COOKIE_VARS);
//$ lista de tiendas-gt;_lista de tiendas_RES();
unset($ sthoplist);
gt
2. Utilice php para leer datos xml.
¿Es? Lenguaje de programación del lado del servidor (abreviatura de Preprocesador de hipertexto profesional)
$ parser = XML_parser_create(); //Crear editor de analizador
XML_set_element_handler ($ parser, "startElement", "end element" "); //Establece las funciones correspondientes cuando se activa la etiqueta, que son startElement y endElenment respectivamente.
XML_set_character_data_handler($parser, "character data"); //Establece la función correspondiente al leer datos.
$ XML_file = "1. XML"; //Especifique el archivo xml a leer, que puede ser una URL.
$filehandler = fopen($xml_file, " r "); //Abre el archivo
while ($data = fread($filehandler, 4096))
{
xml_parse($parser, $data, feof($ file handler));
} // Extrae 4096 bytes a la vez para procesar.
fclose($ file handler);
XML_parser_free($parser); //Cerrar y liberar el analizador.
$ nombre = false
$ posición = false
Función startelement ($parser_instance, $element_name, $attrs)//Función de evento de etiqueta de inicio.
{
$nombre global, $posición
if($element_name=="NOMBRE ")
{
$ nombre = verdadero
$ posición = falso
Echo "nombre":
}
if($element_name= ="POSICIÓN ")
{ $ nombre = false
$ posición = verdadero
Echo "posición":
} p>
}
Función de datos de caracteres($parser_instance, $XML_data)//Función al leer datos.
{
$nombre global, $posición
if(posición)
echo $xml_data. " ltbr >;
if($name)
echo $xml_data.";
}
Fin del elemento de función. ($parser_instance, $element_name)//Función para finalizar el evento del marcador.
{
Global $nombre, $posición
$ nombre = false
$ posición = false
}
gt
El código del archivo xml es el siguiente:
lt? versión xml="1.0"? gt
ltEmployeegt
ltEmployeegt
ltNamegtZhang San
ltposition age="45 " >Gerente p>