此方法要求傳入乙個節點(domnode),返回該節點下的所以子節點組成的陣列。
比如乙個xml檔案:
<?xml version="1.0" encoding="utf-8"?>
file1.txt
2009-09-07
2009-09-08
file2.txt
2009-09-01
2009-09-04
file3.txt
2009-09-01
2009-09-02
2009-09-03
2009-09-04
2009-09-05
呼叫:
$xmlarray = gettreearray($doc->getelementsbytagname("files")->item(0));
print_r($xmlarray);
將得到
array ( [file] => array ( [0] => array ( [filename] => array ( [0] => file1.txt ) [createdate] => array ( [0] => 2009-09-07 ) [modifytrack] => array ( [0] => array ( [date] => array ( [0] => 2009-09-08 ) ) ) ) [1] => array ( [filename] => array ( [0] => file2.txt ) [createdate] => array ( [0] => 2009-09-01 ) [modifytrack] => array ( [0] => array ( [date] => array ( [0] => 2009-09-04 ) ) ) ) [2] => array ( [filename] => array ( [0] => file3.txt ) [createdate] => array ( [0] => 2009-09-01 ) [modifytrack] => array ( [0] => array ( [date] => array ( [0] => 2009-09-02 [1] => 2009-09-03 [2] => 2009-09-04 [3] => 2009-09-05 ) ) ) ) ) )
此函式適用於任何深度結構
函式**
function gettreearray($targetnode)
else}}
return $array;
}
將CSV轉為XML的指令碼
1.csv是定義的比較簡單的 檔案格式,類似excel但是比它簡單 用文字編輯器開啟csv檔案,你可以看到 實際上基本都是用 來分割各個欄位的資料,如下 a,32,0,1,通訊站,交換機房.東門門磁 a,32,1,1,通訊站,交換機房.西門門磁 a,32,2,0,通訊站,交換機房.交流屏故障 a,3...
用OPEN函式將XML資料轉為關聯資料
2005中進一步延續了對xml的支援。本文將向我們展示如何用sqlserver提供的open xml函式將 xml型別資料轉換為其它格式的關聯資料。從sqlserver2000開始,微軟開始支援xml型別的資料。在sqlserver2005中,微軟延續了這一特性,並加強了對xml資料列 xml變數以...
c Marshal 將位元組陣列轉為結構 封裝協議
定義需要轉換的結構體 需要讓結構體資料順序排列並對齊 依次定義每乙個屬性的長度即可,需要注意定義的資料型別的大小要與unmanagedtype型別定義的大小一直 否則會報 不能作為非託管結構進行封送處理 無法計算有意義的大小或偏移量 structlayout layoutkind.sequentia...