我遇到了以下问题:
我正在读取现有的xml文件:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
//Deks.
$xml = simplexml_load_file( "FILE" ) or die (" Couldnt load. ");
foreach ($xml->children() as $one){
foreach ($one->children() as $two ){
foreach($two->children() as $three ){
$array = array();
foreach ($three as $key => $value ){
$array[ ( string ) $key ] = ( string )$value;
echo $key . ' = ' . $value . '<br />';
}
}
}
}
?>
所以我得到了我需要的输出。
我的XML看起来像这样:
<overx>
<overy>
<katx>
<katy>
<rnd>true</rndm>
</katy>
<rely>
<lwm>true</lwm>
</rely>
</katx>
</overy>
</overy>
xml文件大量缩短。大多数孩子的孩子也有不同的名字。
现在我想创建一个动态读取xml表单的html表单。 这就是我这样做的方式:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$form_fields = null;
$xml = simplexml_load_file( "FILE" ) or die (" Couldnt load. ");
foreach ( $xml->children() as $one){
foreach ( $one->children() as $two ){
foreach( $two->children() as $three ){
$array = array();
foreach ( $three as $field ){
$form_fields .= '<div>';
$form_fields .= '<label>' . ucfirst($field->getName()) . ' </label>';
if ($field->getName() == "active" ){
$form_fields .= '<input type="checkbox" value="true"'.$field->getName() . '" />';
}
else{
$form_fields .= '<input type="text" name="'.$field->getName() . '" />';
}
$form_fields .= '</div>';
}
}
}
}
?>
但现在我有以下问题: 我想将表单保存为.xml,其结构与从其加载的XML完全相同。实际上,我通过javascript保存得很差,现在它只保存key-&gt;值而不是结构或其他任何东西,我真的不知道该怎么做。
提前致谢。