跳到主要內容

發表文章

目前顯示的是 10月, 2012的文章

使用SimpleXML讀取XML資料 - PHP

SimpleXML是在php 5.0之後就是核心組成,所以是不需要額外安裝的。 (所以使用SimpleXML記得要檢查php版本喔!) 做個簡單的小範例,使用臺灣郵局 - 3+2碼郵遞區號XML檔 部分資料 1 2 3 4 5 6 7 8 9 <NewDataSet> <Zip32> <Zip5> 10042 </Zip5> <City> 台北市 </City> <Area> 中正區 </Area> <Road> 秀山街 </Road> <Scope> 全 </Scope> </Zip32> </NewDataSet> 這時如果我們只想建立一個陣列,就是City->Area陣列,也就可以取得['台北市'][0] = ['中正區'] 以下是範例程式碼 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <?php $address = array (); $xml = simplexml_load_file ( "test.xml" ); foreach ( $xml -> children () as $zip ){ $city = trim((string) $zip -> City ); $area = trim((string) $zip -> Area ); $address [ $city ] = array ( $area ); } var_dump ( $address ); ?> 第7行與第8行為什麼要強制轉型成string,則是因為$zip->City取出來的值是物件,所以必須得轉型,否則是無法拿來作為key使用。 輸出結果如下 1 2 3 4 5 6 7 array( 1 ) { [ "台北市" ]=> array( 1 ...