以XML存储数据,但不要创建新标签,我的意思是将数据存储在相同的标签中


Store data in XML but don't create new tag I mean store data in same tag

下面我添加我的php代码的xml。我想每次都创建新的teacher标签并将数据存储在这个父标签中。但不幸的是,新数据取代了标签名称的相同位置。

    $str = '<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="xsl.xsl"?><teachers></teachers>';
    $xml = simplexml_load_string($str);
    $name_info = htmlentities($name_info, ENT_COMPAT, 'UTF-8', false);
    $class_info = htmlentities($class_info, ENT_COMPAT, 'UTF-8', false);
    $section_info = htmlentities($section_info, ENT_COMPAT, 'UTF-8', false);
    $school_info = htmlentities($school_info, ENT_COMPAT, 'UTF-8', false);
    $session_info = htmlentities($session_info, ENT_COMPAT, 'UTF-8', false);
    $mark_sheet = htmlentities($mark_sheet, ENT_COMPAT, 'UTF-8', false);
    $semester_info = htmlentities($semester_info, ENT_COMPAT, 'UTF-8', false);
    $teacher = $xml->addChild('teacher');
    $teacher->addChild('teacher_name', $name_info);
    $teacher->addChild('class_info', $class_info);
    $teacher->addChild('section_info', $section_info);
    $teacher->addChild('school_info', $school_info);
    $teacher->addChild('session_info', $session_info);
    $teacher->addChild('marksheet', $mark_sheet);
    $teacher->addChild('semester_info', $semester_info);
    $doc = new DOMDocument('1.0');
    $doc->formatOutput = true;
    $doc->preserveWhiteSpace = true;
    $doc->loadXML($xml->asXML(), LIBXML_NOBLANKS);
    $doc->save('teacher.xml');

代替

   $xml = simplexml_load_string($str);

写这

  $xml = new SimpleXMLElement("teacher.xml", null, true);