导航:首页 > 编程语言 > php修改xml节点

php修改xml节点

发布时间:2023-07-25 04:53:18

❶ (使用php语言)Simple_XML中如果对中文结点进行解析

其答枝实可以用php把xml生成数组然后在处理.
<?php
/*
程序:get_xml_array.php
作用:将xml数据生成数组,数组格式:标签名=>值。
时间:2009-3-20
*/
//定义一个将xml标签对应值对象
class AminoAcid {

function AminoAcid ($aa)
{
foreach ($aa as $k=>$v){
$this->$k = $aa[$k];
}
}
}
/*
函数readDarabase
参数:
$file:文件路径。
$tree:根据此生成循环数组的xml标签
*/
function readDatabase($file,$tree)
{
$data = implode("",file($file));
//echo $data;
$parser = xml_parser_create();
xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);
xml_parse_into_struct($parser, $data, $values, $tags);
xml_parser_free($parser);
foreach ($tags as $key=>$val) {
if ($key == $tree) {
$molranges = $val;
for ($i=0; $i < count($molranges); $i+=2) {
$offset = $molranges[$i] + 1;
$len = $molranges[$i + 1] - $offset;
$tdb[] = parseMol(array_slice($values, $offset, $len));
}
} else {
continue;
}
}
return $tdb;
}

function parseMol($mvalues)
{
for ($i=0; $i < count($mvalues); $i++) {
$mol[$mvalues[$i]["tag"]] = $mvalues[$i]["value"];
}
//print_r( new AminoAcid($mol));
return new AminoAcid($mol);
}
$tree = "monster";
$db = readDatabase("1.xml",$tree);
print_r($db);

?>
其中1.xml就是
<?xml version="1.0" encoding="utf-8"?>
<monster>
<xiyou:姓名 type='text'>孙桥肆悟空</xiyou:姓名>
<xiyou:技能 type='text'>火眼金睛</xiyou:技能>
<xiyou:年清消敏龄 type='text'>638</xiyou:年龄>
</monster>

用这个处理是将数组生成了一个与其标签对应的数组,我经常用这个,感觉数据处理起来比较方便,如果非要用Simple_XML其实更简单一些。你可以参考一下,这个
http://hi..com/hoveriann/blog/item/6af70bfbd9546662024f56dc.html

阅读全文

与php修改xml节点相关的资料

热点内容
android内置sd外置sd卡 浏览:630
程序员在东南亚被毒打 浏览:284
php内存操作 浏览:6
1加手机号码放哪个文件夹 浏览:728
大兵程序员 浏览:785
青桔app福利中心在哪里 浏览:170
算法安全是智能化战争的博弈焦点 浏览:497
编译器用vs多少 浏览:316
pc单机游戏压缩包下载 浏览:570
服务器锁定什么意思 浏览:731
吐司解压神器 浏览:70
程序员的电脑一般用什么 浏览:934
如何从服务器中查询表是否存在 浏览:323
android首页布局源码 浏览:46
虎牙主播是怎么安卓投屏的 浏览:782
redmonk编程语言排行榜 浏览:110
android嵌入html5 浏览:676
云服务器能永久使用吗 浏览:904
linux安装openresty 浏览:386
ubunt配置php 浏览:976