有與內容類似以下內容的XML文件:如何對使用SimpleXML加載的XML文件的內容進行排序?
<FMPDSORESULT xmlns="http://www.filemaker.com">
<ERRORCODE>0</ERRORCODE>
<DATABASE>My_Database</DATABASE>
<LAYOUT/>
<ROW MODID="1" RECORDID="1">
<Name>John</Name>
<Age>19</Age>
</ROW>
<ROW MODID="2" RECORDID="2">
<Name>Steve</Name>
<Age>25</Age>
</ROW>
<ROW MODID="3" RECORDID="3">
<Name>Adam</Name>
<Age>45</Age>
</ROW>
我試圖使用array_multisort
功能ROW
標籤由Name
變量的數值進行排序:
$xml = simplexml_load_file('xml1.xml');
$xml2 = sort_xml($xml );
print_r($xml2);
function sort_xml($xml ) {
$sort_temp = array();
foreach ($xml as $key => $node) {
$sort_temp[ $key ] = (string) $node->Name;
}
array_multisort($sort_temp, SORT_DESC, $xml);
return $xml;
}
但代碼無法按預期工作。
你說的沒錯,DOM是很多更加靈活和強大。但是我建議在任何情況下都使用Xpath。 :-) – ThW
@ThW,我喜歡XPath,但在這種特殊情況下,我不認爲它會顯着改善代碼。 –