解析 xml 的方法:simplexml:使用對(duì)象語(yǔ)法,解析簡(jiǎn)單 xml 文檔。domdocument:提供對(duì) xml 文檔的精細(xì)控制。
如何在 PHP 中解析 XML
解析 XML 是 web 開發(fā)中一項(xiàng)常見任務(wù),PHP 提供了幾種解析 XML 的方法。本文將介紹兩種最流行的方法:SimpleXML 和 DOMDocument。
使用 SimpleXML
SimpleXML 是 PHP 內(nèi)置的庫(kù),用于解析簡(jiǎn)單 XML 文檔。它使用對(duì)象語(yǔ)法來(lái)訪問(wèn) XML 節(jié)點(diǎn)和屬性,非常易于使用。
$xml = simplexml_load_file('example.xml'); foreach ($xml->person as $person) { echo "姓名:" . $person->name . "<br>"; echo "年齡:" . $person->age . "<br>"; }
登錄后復(fù)制
使用 DOMDocument
DOMDocument 是 W3C 標(biāo)準(zhǔn)的 DOM(文檔對(duì)象模型)實(shí)現(xiàn)。它提供了對(duì) XML 文檔的更精細(xì)控制。
$doc = new DOMDocument(); $doc->load('example.xml'); $xpath = new DOMXPath($doc); $nodes = $xpath->query('/people/person'); foreach ($nodes as $node) { $name = $node->getElementsByTagName('name')->item(0)->nodeValue; $age = $node->getElementsByTagName('age')->item(0)->nodeValue; echo "姓名:" . $name . "<br>"; echo "年齡:" . $age . "<br>"; }
登錄后復(fù)制
實(shí)戰(zhàn)案例:從 XML 中提取天氣數(shù)據(jù)
以下是使用 SimpleXML 提取天氣數(shù)據(jù)的實(shí)戰(zhàn)示例:
$xml = simplexml_load_file('weather.xml'); $location = $xml->location; $temperature = $xml->current->temperature; $humidity = $xml->current->humidity; echo "位置:" . $location . "<br>"; echo "氣溫:" . $temperature . "<br>"; echo "濕度:" . $humidity . "<br>";
登錄后復(fù)制