導航:首頁 > 編程語言 > 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節點相關的資料

熱點內容
程序員戴手錶影響工作嗎 瀏覽:235
游戲皇後解壓視頻 瀏覽:367
c語言怎麼打開文件編譯 瀏覽:436
手機上什麼app可以設計logo 瀏覽:800
pid演算法單片機 瀏覽:375
python數據精度 瀏覽:632
管什麼小女孩App 瀏覽:192
phppdf轉換成圖片 瀏覽:468
十八講pdf 瀏覽:619
mysql導入壓縮文件 瀏覽:21
usb控制單片機 瀏覽:906
你為什麼喜歡安卓手機 瀏覽:863
阿里雲伺服器購買和使用 瀏覽:389
單片機sp1 瀏覽:282
大學生玩貓咪解壓 瀏覽:794
php附近的演算法 瀏覽:346
黑馬程序員培訓機構怎麼樣 瀏覽:36
怎麼查找伺服器ip地址 瀏覽:371
華為手機為什麼開不了定位伺服器地址 瀏覽:970
美容美發app哪裡有 瀏覽:8