当我使用 PHP 在 XML 中添加新元素时,如何设置属性。我的PHP代码是这样的:
<?php
$xml = simplexml_load_file ( 'log.xml' );
$movies = $xml->addChild("time");
// add attribut `value` here in tag time
$user = $movies->addChild("user", "");
// add attribut `id` here in tag user
$action = $user->addChild("action","");
// add attribut `value` here in tag action
$action->addChild("table","customers");
$action->addChild("table_id","1");
echo $xml->saveXML( 'log.xml' );
?>
我希望输出看起来像这样:
// log.xml
<?xml version="1.0" encoding="utf-8"?>
<log>
<time value="2013-01-10 12:20:01">
<user id="1">
<action value="delete">
<table>customer</table>
<table_id>1</table_id>
</action>
<action value="insert">
<table>customer</table>
<data>
<nama>budi</nama>
</data>
</action>
<action value="update">
<table>customer</table>
<table_id>1</table_id>
<old_data>
<nama>andi</nama>
</old_data>
<new_data>
<nama>budi</nama>
</new_data>
</action>
</user>
</time>
</log>
请帮助我..我对 xml 很陌生
使用 SimpleXMLElement::addAttribute — 向 SimpleXML 元素添加属性
编辑:您的用例 -
$action = $user->addChild("action","");
// add attribut `value` here in tag action
$action->addAttribute('value','update'); // add this
$action->addChild("table","customers");
$action->addChild("table_id","1");
最好的例子:
http://php.net/manual/en/simplexmlelement.addattribute.php
<?php
include 'example.php';
$sxe = new SimpleXMLElement($xmlstr);
$sxe->addAttribute('type', 'documentary');
$movie = $sxe->addChild('movie');
$movie->addChild('title', 'PHP2: More Parser Stories');
$movie->addChild('plot', 'This is all about the people who make it work.');
$characters = $movie->addChild('characters');
$character = $characters->addChild('character');
$character->addChild('name', 'Mr. Parser');
$character->addChild('actor', 'John Doe');
$rating = $movie->addChild('rating', '5');
$rating->addAttribute('type', 'stars');
echo $sxe->asXML();
?>
归功于 PHP.Net 参考页面中的第一个示例...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)