How to parse XML using PHP?

WBOY
Release: 2024-04-20 12:06:02
Original
1114 people have browsed it

Method of parsing XML: SimpleXML: Use object syntax to parse simple XML documents. DOMDocument: Provides fine-grained control over XML documents.

如何使用 PHP 解析 XML?

How to parse XML in PHP

Parsing XML is a common task in web development, and PHP provides several parsing methods XML method. This article will introduce the two most popular methods: SimpleXML and DOMDocument.

Using SimpleXML

SimpleXML is PHP's built-in library for parsing simple XML documents. It uses object syntax to access XML nodes and attributes, making it very easy to use.

$xml = simplexml_load_file('example.xml');

foreach ($xml->person as $person) {
  echo "姓名:" . $person->name . "<br>";
  echo "年龄:" . $person->age . "<br>";
}
Copy after login

Using DOMDocument

DOMDocument is the W3C standard DOM (Document Object Model) implementation. It provides finer control over XML documents.

$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>";
}
Copy after login

Practical case: Extracting weather data from XML

The following is a practical example of using SimpleXML to extract weather data:

$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>";
Copy after login

The above is the detailed content of How to parse XML using PHP?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template