PHP 5 SimpleXML 函数
PHP 5 SimpleXML 函数
在PHP 5中,SimpleXML
是用于将 XML 文档解析为对象的简单工具。它允许您以编程方式读取和操作 XML 数据,而无需了解 XML 的复杂性。它是一种快速和简单的解决方案。
简单介绍
SimpleXML
是一个PHP模块,允许您以像对象一样的方式处理XML文档。它可用于处理XML响应,XML配置文件和从其他系统或服务中获取XML数据。
它可以在大多数PHP编译文件中找到,因此您无需执行任何操作即可开始使用它。
如何解析XML文件
在使用SimpleXML
之前,您需要创建一个XML文档或从其他地方获取一个XML源。如果您需要创建XML文档,您可以使用DomDocument
类。默认情况下,SimpleXML
可以加载URL或文件中的数据,也可以将XML String作为参数传递。
<?php
$xml = simplexml_load_file('books.xml');
print_r($xml);
?>
在这个例子中,simplexml_load_file
函数被调用来加载XML文件,然后它将XML转换成一个对象。通过print_r
函数,您可以打印该对象,以查看其结构和内容。
如何从XML文件中读取值
读取SimpleXML对象中的值非常简单。您只需要使用对象属性或方法。例如,假设您有一个包含以下XML的文件。
<?xml version="1.0"?>
<library>
<book id="001">
<title>PHP 5 SimpleXML Functions</title>
<category>Programming</category>
<price>15.95</price>
</book>
<book id="002">
<title>Java Programming</title>
<category>Programming</category>
<price>19.95</price>
</book>
<book id="003">
<title>Designing with XHTML</title>
<category>Web Design</category>
<price>25.95</price>
</book>
</library>
您可以使用以下代码从中读取数据。
<?php
$xml=simplexml_load_file("books.xml") or die("Error: Cannot create object");
echo "<table border='1'>";
echo "<tr><th>Title</th><th>Category</th><th>Price</th></tr>";
foreach($xml->children() as $book) {
echo "<tr><td>".$book->title . "</td><td>" . $book->category . "</td><td>" . $book->price . "</td></tr>";
}
echo "</table>";
?>
在这个例子中,您可以看到SimpleXML
对象的属性和方法如何与foreach
循环结合使用来读取数据的值。
如何写入XML文件
如果您需要使用SimpleXML
创建一个新的XML文档或将新数据添加到现有文档中,您需要创建一个新的XML或编辑现有XML。要编辑现有XML,您需要使用simplexml_load_file
将其加载到对象中,将更改保存在对象中,然后使用asXML
方法将其写回到文件。
<?php
$xml = simplexml_load_file("books.xml") or die("Error: Cannot create object");
// add new book
$newbook = $xml->addChild("book");
$newbook->addChild("title", "JavaScript");
$newbook->addChild("category", "Programming");
$newbook->addChild("price", '29.95');
// save as new file
$xml->asXML("newbooks.xml");
?>
这个例子中,我们首先将XML加载到SimpleXML对象中,然后添加一个新书GetObject。我们设置新书的标题,类别和价格。最后,我们使用asXML
方法将修改后的XML写回到文件,并将其命名为“newbooks.xml”。
总结
SimpleXML是一个快速和简单的方法,用于将XML文档解析为对象,并允许您以编程方式读取和操作XML文件。通过在您的PHP应用程序中使用SimpleXML,您可以轻松地处理XML响应,XML配置文件和从其他系统或服务获取XML数据。