Home  >  Article  >  Backend Development  >  php array conversion xml

php array conversion xml

王林
王林Original
2023-05-23 14:16:11848browse

Converting PHP arrays to XML format is a very common data format conversion method. It can convert PHP arrays into XML documents, making the data easier to process and transmit. This article will introduce how to convert PHP array to XML.

1. Use PHP built-in functions

PHP built-in functions simplexml_load_string() and simplexml_load_file() can convert XML documents into PHP objects, and conversely, you can also use PHP arrays to convert into XML.

First, we need to define an array, as follows:

$data = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

Then, we need to use PHP built-in functions to convert the array to XML, the sample code is as follows:

$root = new SimpleXMLElement('<root/>');
array_walk_recursive($data, array($root, 'addChild'));
echo $root->asXML();

The example The code will output the following results:

<root>
    <name>Tom</name>
    <age>25</age>
    <gender>male</gender>
</root>

2. Use third-party libraries

In addition to using PHP built-in functions, you can also use third-party libraries such as XMLWriter and DomDocument to convert PHP arrays to XML.

Next, we will use the XMLWriter class to convert the array into an XML document. The sample code is as follows:

$data = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

$xml = new XMLWriter();
$xml->openMemory();
$xml->startDocument();
$xml->startElement('root');
foreach ($data as $key => $value) {
    $xml->writeElement($key, $value);
}
$xml->endElement();
$xml->endDocument();
echo $xml->outputMemory();

This example will output the following results:

<?xml version="1.0"?>
<root>
  <name>Tom</name>
  <age>25</age>
  <gender>male</gender>
</root>

3. Use XML Libraries

PHP also provides some XML libraries to convert PHP arrays to XML. Among them, the DOM and SimpleXML libraries can be used to process and transform XML.

Next, we will use the SimpleXML library to convert the array to XML. The sample code is as follows:

$data = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

$xml = new SimpleXMLElement('');

foreach ($data as $key => $value) {
    $xml->addChild($key, $value);
}

echo $xml->asXML();

This example will output the following results:

<?xml version="1.0"?>
<root>
  <name>Tom</name>
  <age>25</age>
  <gender>male</gender>
</root>

Summary

PHP array conversion to XML can be achieved using PHP built-in functions, third-party libraries and XML libraries. Which method you choose depends on your needs and personal preferences. The above code example may be simple, but in real applications it can be more complex. Therefore, it is necessary to better understand how to convert PHP arrays to XML for better data format conversion and processing.

The above is the detailed content of php array conversion xml. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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