关于PHP读取XML数据的问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 18:48:12
我在网上找了一个PHP读取XML数据的例子
可是总是出错 请大家帮看看
PHP文件代码:
<?php
$parser = xml_parser_create(); //创建一个parser编辑器
xml_set_element_handler($parser,"startElement","endElement");//设立标签触发时的相应函数 这里分别为startElement和endElenment
xml_set_character_data_handler($parser, "characterData");//设立数据读取时的相应函数
$xml_file="1.xml";//指定所要读取的xml文件,可以是url
$filehandler = fopen($xml_file, "r");//打开文件
while($data = fread($filehandler, 4096))
{
xml_parse($parser,$data,feof($filehandler));
}
fclose($filehandler);
xml_parser_free($parser);//关闭和释放parser解析器
$name=false;
$position=false;

function startElement($parser_instance,$element_name,$attrs)
{
global $name,$position;
if($element_name=="NAME"){
$name=true;
$position=false;
echo "名字:";
}
if($element_name=="POSITION"){
$name=false;
$posi

编码问题,function characterData改成如下
function characterData($parser_instance, $xml_data)
{
global $name,$position;
$xml_data=iconv("utf-8","gb2312",$xml_data);//转换成gb2312
if($position)
echo $xml_data."<br>";
if($name)
echo $xml_data."<br>";
}

显示的那个页面也要有charset=gb2312