在PHP

时间:2015-08-24 18:00:54

标签: php xml flash

我尝试从PHP加载XML文件(我可以这样做),然后将数据附加到PHP从Flash接收的数据。我想添加一个int($exists;这是1或0),作为<data>的孩子

XML(当前):

<?xml version="1.0" encoding="UTF-8"?>
<data>
  <presets>
    <colors>0xff0000</colors>
    <colors>0x00ff00</colors>
    <colors>0x0000ff</colors>
  </presets>
</data>

PHP:

$xml = new DOMDocument('1.0');
$xml->formatOutput = true;
$xml->preserveWhiteSpace = false;
$xml->load("testXML.xml");
$existBool = $xml->createElement("exists", $exists);
$data->appendChild($existBool);
echo $xml->saveXML();

XML(所需):

<?xml version="1.0" encoding="UTF-8"?>
<data>
  <presets>
    <colors>0xff0000</colors>
    <colors>0x00ff00</colors>
    <colors>0x0000ff</colors>
  </presets>
  <exists>$exists</exists>
</data>

闪光:

var newXML:XML = new XML(event.target.data);
trace(newXML);

我在Flash中收到了未处理的IO错误。我是否必须以某种方式让PHP知道<data>是正在加载的xml文件的一部分,而不仅仅是我声明的一些变量?

如果这不可能与DOMDoc一起使用,是否可以使用SimpleXMLElement(或类似的东西)?

解决。

1 个答案:

答案 0 :(得分:1)

解决。我将data元素设置为根元素:

$data = $xml->documentElement;