douguanya6399
douguanya6399
2016-11-19 07:01
浏览 32

使用DOMDocument()在php中创建XML文件

I want to create XML file in php and I have saved the values from array to variable

<?php
$name = $e['name_1'];
$email = $e['email_id'];
$phone_no =$e['phone_no'];

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

$ele1 = $doc->createElement('StudentName');
$ele1->nodeValue=$name;
$doc->appendChild($ele1);

$ele2 = $doc->createElement('FatherEmailId');
$ele2->nodeValue=$email;
$doc->appendChild($ele2);

$ele3 = $doc->createElement('PhoneNumber');
$ele3->nodeValue=$phone_no;
$doc->appendChild($ele3);

$doc->save('MyXmlFile007.xml');  

?>

i want my XML formatted lik this

<?xml version="1.0"?>
<StudentDetails>
<StudentName>Pravin Parayan</StudentName>
<FatherEmailId>pravinp@pigtailpundits.com</FatherEmailId>
<PhoneNumber>9000012345</PhoneNumber>
<StudentDetails/>

But instead of the above i get something lik this

<?xml version="1.0"?>
<StudentDetails/>
<StudentName>Joel George</StudentName>
<FatherEmailId>joy@pigtailpundits.com</FatherEmailId>
<PhoneNumber>9000012345</PhoneNumber>
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongzouqie4220
    dongzouqie4220 2016-11-19 09:01
    已采纳

    All you need to do is to add a root element StudentDetails, and append all other elements ti it, like the following:

    <?php
    $name = $e['name_1'];
    $email = $e['email_id'];
    $phone_no =$e['phone_no'];
    
    $doc = new DOMDocument();
    $doc->formatOutput = true;
    
    $root = $doc->createElement('StudentDetails');
    $root = $doc->appendChild($root);
    
    $ele1 = $doc->createElement('StudentName');
    $ele1->nodeValue=$name;
    $root->appendChild($ele1);
    
    $ele2 = $doc->createElement('FatherEmailId');
    $ele2->nodeValue=$email;
    $root->appendChild($ele2);
    
    $ele3 = $doc->createElement('PhoneNumber');
    $ele3->nodeValue=$phone_no;
    $root->appendChild($ele3);
    
    $doc->save('MyXmlFile007.xml');
    

    And the result would be like:

    <?xml version="1.0"?>
    <StudentDetails>
      <StudentName>Pravin Parayan</StudentName>
      <FatherEmailId>pravinp@pigtailpundits.com</FatherEmailId>
      <PhoneNumber>9000012345</PhoneNumber>
    </StudentDetails>
    
    点赞 评论

相关推荐