我如何用这种格式构建xml?

问题描述 投票:0回答:1
php xml laravel xml-parsing
1个回答
0
投票

如果你想添加一些东西作为子元素,你必须这样做。 这会将包装元素添加为根元素的子元素,然后您可以直接将子元素添加到包装元素。

<?php

$xml = new \SimpleXMLElement('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><pt:request xmlns:pt="urn:logalty:schemas:core:1.0" xmlns:identity="urn:logalty:schemas:core:identity:1.0" xmlns:process_meta="urn:logalty:schemas:process:meta:1.0" xmlns:ptforms="urn:logalty:schemas:forms:1.0" xmlns:request_meta="urn:logalty:schemas:request:meta:1.0"></pt:request>');

$wrapper = $xml->addChild('pt:request_meta');

$wrapper->addChild('request_meta:service', 'instalacion_id_1', 'request_meta');
// add the rest of the data

$xml->saveXML('test.xml');

此代码片段产生的输出是

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<pt:request xmlns:pt="urn:logalty:schemas:core:1.0" xmlns:identity="urn:logalty:schemas:core:identity:1.0" xmlns:process_meta="urn:logalty:schemas:process:meta:1.0" xmlns:ptforms="urn:logalty:schemas:forms:1.0" xmlns:request_meta="urn:logalty:schemas:request:meta:1.0">
    <pt:request_meta>
        <request_meta:service xmlns:request_meta="request_meta">instalacion_id_1</request_meta:service>
    </pt:request_meta>
</pt:request>
© www.soinside.com 2019 - 2024. All rights reserved.