1

我使用 php 从 html 表单编写 xml,由于这个问题,我无法继续。谢谢你的帮助!

 <?php 
  $root = array();  
 $root [] = array( 
 'subtitle' => $_POST['subtitle'], 
 ); 
 echo $_POST['subtitle'];//checker if POST really passes data

 $doc = new DOMDocument(); 
 $doc->formatOutput = true; 

 $r = $doc->createElement( "root" ); 
 $doc->appendChild( $r ); 

 $subtitle = $doc->createElement( "subtitle" ); 
 $subtitle->appendChild($doc->createTextNode( $root['subtitle'])); --Undefined index-
 $r->appendChild( $subtitle ); 

$root['subtitle'] 未定义,我不知道为什么。

 echo $doc->saveXML(); 
 $doc->save(.$_POST['title'].".xml") 
 ?>

该代码确实生成了一个 xml 文件,但节点为空

<?xml version="1.0"?>
<root>
  <subtitle></subtitle>
</root>

谢谢!

写了 print_r($root) 并在表格中写了 qwerty。这是输出数组( [0] => Array ( [subtitle] => qwerty ) )

4

1 回答 1

2

你在做$root [] = array(...)。因此它在数组的索引0处创建另一个$root数组。

尝试做:

$subtitle->appendChild($doc->createTextNode($root[0]['subtitle']));

或者在初始化$root数组时去掉括号。

于 2013-03-03T16:39:18.117 回答