vaclavvanik/xml-to-array

将XML转换为数组

1.3.0 2021-08-16 09:39 UTC

This package is auto-updated.

Last update: 2024-09-10 03:19:15 UTC


README

此包提供了一个非常简单的类,用于将XML转换为数组。

安装

您可以通过composer安装此包。

composer require vaclavvanik/xml-to-array

使用方法

use VaclavVanik\XmlToArray\XmlToArray;

$xml = <<<'XML'
<root>
    <good_guy>
        <name>Luke Skywalker</name>
        <weapon>Lightsaber</weapon>
    </good_guy>
    <good_guy>
        <name><![CDATA[<h1>Gandalf</h1>]]></name>
        <weapon>Staff</weapon>
    </good_guy>
    <bad_guy lang="Black Speech">
        <name>Sauron</name>
        <weapon>Evil Eye</weapon>
    </bad_guy>
</root>
XML;

$result = XmlToArray::stringToArray($xml);

运行此段代码后,$result 将包含

[
    'root' => [
        'good_guy' => [
            [
                'name' => 'Luke Skywalker',
                'weapon' => 'Lightsaber',
            ],
            [
                'name' => '<h1>Gandalf</h1>',
                'weapon' => 'Staff',
            ],
        ],
        'bad_guy' => [
            '@attributes' => [
                'lang' => 'Black Speech',
            ],
            'name' => 'Sauron',
            'weapon' => 'Evil Eye',
        ],
    ],
];

XML文件转换

use VaclavVanik\XmlToArray\XmlToArray;

$result = XmlToArray::stringToArray('my.xml');

直接转换DOMDocument

use DOMDocument;
use VaclavVanik\XmlToArray\XmlToArray;

$doc = new DOMDocument();
//$doc->loadXML(...);

$xmlToArray = new XmlToArray($doc);
$result = $xmlToArray->toArray();

运行检查 - 编码标准和php-unit

make check

更新日志

请参阅 更新日志 了解最近的变化。

许可证

MIT许可证(MIT)。请参阅 许可证文件 获取更多信息。