我现在有个检索后的结果集
USER_ID = 1
USER_NAME= 小张
POINT = 80USER_ID = 2
USER_NAME=小李
POINT = 60USER_ID = 3
USER_NAME= 小王
POINT = 70想生成一个xml的字符串如下
"<?xml version='1.0' encoding='UTF-8'?>
<ExportData>
<Body>
<Content>
<Id>1</Id><Name小张</Name><Point>80</Point>
</Content>
<Content>
<Id>2</Id><Name>小李</Name><Point>60</Point>
</Content>
<Content>
<Id>3</Id><Name>小王</Name><Point>70</Point>
</Content>
</Body>
</ExportData>";
请教各位大侠怎么实现啊
USER_ID = 1
USER_NAME= 小张
POINT = 80USER_ID = 2
USER_NAME=小李
POINT = 60USER_ID = 3
USER_NAME= 小王
POINT = 70想生成一个xml的字符串如下
"<?xml version='1.0' encoding='UTF-8'?>
<ExportData>
<Body>
<Content>
<Id>1</Id><Name小张</Name><Point>80</Point>
</Content>
<Content>
<Id>2</Id><Name>小李</Name><Point>60</Point>
</Content>
<Content>
<Id>3</Id><Name>小王</Name><Point>70</Point>
</Content>
</Body>
</ExportData>";
请教各位大侠怎么实现啊
<?xml version='1.0' encoding='UTF-8'?>
<ExportData>
<Body>
xml;
while($row = mysql_fetch_assoc($queryResult) )
{
$xml .=<<<xml
<Content>
<Id>{$row['USER_ID']}</Id>
<Name>{$row['USER_NAME']}</Name>
<Point>{$row['POINT']}</Point>
</Content>
xml;
}
$xml .=<<<xml
</Body>
</ExportData>
xml;
php 5.3以后还有自带的 XMLWriter,生成的程序会更规范点,不过代码量会大点我不写了
"<?xml version='1.0' encoding='UTF-8'?>
<ExportData>
<Body>
<Content>
<Id>1</Id><Name小张</Name><Point>80</Point>
</Content>
<Content>
<Id>2</Id><Name>小李</Name><Point>60</Point>
</Content>
<Content>
<Id>3</Id><Name>小王</Name><Point>70</Point>
</Content>
</Body>
</ExportData>";
这样的一个字符串1楼的代码在页面上echo后 显示的是
1 小张 80 2 小李 60 3 小王 70
想要标准的输出xml 在echo之前加上 header('Content-Type:text/xml');
在代码的最前面加一句 header('Content-type: text/xml; charset=UTF-8'); ,
并且把
$xml = <<<xml
<?xml version='1.0' encoding='UTF-8'?>
中的 <?xml 挪到最前面去,前面不能有任何输出。一切ok