2016-10-24 10 views
1

以下、XML用のPHPコードを追加します。私はたびに新しい先生のタグを作成し、この親タグにデータを保存したい。しかし残念ながら、新しいデータはタグ名の位置を同じに置き換えます。データをXMLに保存しますが、新しいタグを作成しません。同じタグにデータを保存することを意味します。

$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'); 

答えて

0

代わりの

$xml = simplexml_load_string($str); 

この

$xml = new SimpleXMLElement("teacher.xml", null, true); 
を書きます
関連する問題