【发布时间】:2011-07-06 18:23:22
【问题描述】:
$xml = new DOMDocument();
$xml_store_inventory = $xml->createElement('store-inventory'); // highest layer
$xml_item = $xml->createElement('item');
$xml_quantity = $xml->createElement('quantity');
$xml->appendChild($xml_store_inventory);
$xml_store_inventory->appendChild($xml_item);
$xml_location->appendChild($xml_quantity);
给予:
<?xml version="1.0"?>
<store-inventory>
<item>
<quantity></quantity>
</item>
</store-inventory>
所以,我设法使用 DOM 在 PHP 中创建了上述内容。我一直在网上搜索如何“填充”,但我没有找到任何有关如何执行此操作的信息。
更具体地说,我希望它看起来像这样
<?xml version="1.0" encoding="UTF-8"?>
<store-inventory
xmlns="http://..."
xmlns:xsi="http://..."
xsi:schemaLocation="http://...">
<item item-id="abcd">
<quantity>0</quantity>
</item>
</store-inventory>
所以,我想添加/更改以下内容:
- 更改 XML 版本行以包括编码(刮掉这个,我想通了 --> $xml = new DOMDocument('1.0', 'UTF-8');)
- 向元素添加附加信息。例如[item] 到 [item item-id="abcd"]
- 还有 [数量] 到 [数量]0[/数量]
有人可以帮我解决这个问题吗?蒂亚!
【问题讨论】:
-
嗯,我刚刚注意到了。在对我以前的帖子进行了一些访问之后,它似乎是为了标记我的帖子的解决方案。我没有想到要这样做。对不起,我有点新。
-
没问题,只是一个小提醒;)。我在您的问题中不明白的是:“1. 更改 XML 版本行以包含编码”我在 XML 中都看到了版本和编码。你想改变什么?
-
@hakre,上面的第三个代码块是我希望 XML 的样子。我已经更新了我的帖子,所以反映我已经弄清楚了 1。现在我需要弄清楚 2 和 3!
-
我已经为 2 和 3 添加了答案。关于 UTF-8 编码:这是 XML 默认值,因此无需实际添加。但这样做也不是问题;)