1

PHP は初めてで、PHP を使用して XML ファイルを編集したいと考えています。xml ファイルに子を追加すると、適切な形式で子を取得できません。これはファイル内のさらなる編集でトラブルのログを作成しています。結果のxmlが適切にフォーマットされるように、xmlファイルを編集するのを手伝ってください。

前もって感謝します。

このコードを使用してxmlファイルを編集しています

<?php

$xml_file = simplexml_load_file('editing.xml');

$xml_file->formatOutput = true;

$xml_file->preserveWhiteSpace = false;

$xml_file->addChild('article',' ')->addAttribute('id', 'id3');

file_put_contents('editing.xml', $xml_file->asXML());
?>

これは私が使用しているxmlファイルです。

<?xml version="1.0" encoding="utf-8"?>
<userva>
    <user id="BPL000001" first_name="f_name" last_name="l_name">

        <article id="wersomething">
            <title>Some title</title>
            <description>he does play well all the time</description>
            <posted_on>11/Nov/2012</posted_on>
            <text_contents>Some contents.. Some Contents..Some contents.. Some Contents..Some contents.. Some Contents..</text_contents>
            <images>
                <image>image1.jpg</image>
                <image>image2.jpg</image>
            </images>
            <links>
                <link>link1</link>
                <link>link2</link>
            </links>
            <likes>
                <like>like11</like>
                <like>like12</like>
                <like>like13</like>
                <like>like14</like>
                <like>like15</like>
            </likes>
            <comments>
                <comment by="523423440"/>
                <comment by="054232130"/>
                <comment by="15849584200"/>
            </comments>
       </article>

        <article id="id2">
            <title>Some title</title>
            <description>he does play well all the time</description>
            <posted_on>95956262</posted_on>
            <text_contents>Some contents.. Some Contents..Some contents.. Some Contents..Some contents.. Some Contents..</text_contents>
            <images>
                <image>imageva1.jpg</image>
                <image>imageva2.jpg</image>
            </images>
            <links>
                <link>link1</link>
                <link>link2</link>
            </links>
            <likes>
                <like>like21</like>
                <like>like22</like>
                <like>like23</like>
                <like>like24</like>
                <like>like25</like>
            </likes>
            <comments>
                <comment by="0142264340"/>
                <comment by="0523412130"/>
                <comment by="5523484200"/>
            </comments>
        </article>
    </user>
</userva>
4

1 に答える 1

1

これを参照してください

http://php.net/manual/en/function.simplexml-element-asXML.php

そしてこれを試してください:

$dom = dom_import_simplexml($simpleXml)->ownerDocument;
$dom->formatOutput = true;
echo $dom->saveXML();
于 2012-12-09T06:10:15.160 に答える