In diesem Artikel wird hauptsächlich die Methode von PHP zum Betreiben von XML basierend auf XMLWriter vorgestellt und die Betriebsfähigkeiten von PHP mithilfe von XMLWriter zum Generieren und Analysieren von XML-Daten in Form von Beispielen analysiert
Folgen Sie dem gestrigen Artikel. Lassen Sie uns dieses Mal eine Möglichkeit zum Lesen und Schreiben von XML erlernen, die sich hauptsächlich um XMLWriter und XMLReader dreht. Ersteres wird zum Generieren von XML verwendet, und letzteres wird zum Lesen und Analysieren von XML verwendet. Schauen wir uns ohne weiteres einen Blick auf
1. Generieren Sie eine XML-Datei oder einen String
<?php header("Content-type: text/html; charset=utf-8"); $xml=new XMLWriter(); //$xml->openUri("php://output"); //设置输出,如果不需要保存成文件则使用上面被注释掉那句 $xml->openUri("stu2.xml"); //设置缩进字符串,这里设置为空串(这句和下面的setIntent也可以不要) $xml->setIndentString(''); $xml->setIndent(true); //xml文档开始 $xml->startDocument('1.0', 'utf-8'); //创建根节点 $xml->startElement("StudentInfo"); $xml->startElement("Item"); //添加属性 $xml->writeAttribute("type","1"); $xml->startElement("id"); $xml->text("01"); $xml->endElement(); $xml->startElement("name"); $xml->text("刘惜君"); $xml->endElement(); $xml->endElement(); $xml->endElement(); $xml->endDocument(); //header("Content-type: text/xml"); //取得缓冲区里的xml字符串 //echo $xml->outputMemory(); ?>
Das Merkmal dieser Methode ist, dass am Ende jedes Tags ein endElement erforderlich ist und das Dokument danach beendet werden muss Die XML-Datei ist gespleißt. Es entsteht ein Gefühl von „Schichten der Verpackung“
2 > Diese Art der XML-Analyse ist effizienter. Wenn Sie etwas nicht verstehen, wird empfohlen, das PHP-Entwicklungshandbuch zu konsultieren Der Inhalt der analysierten Datei ist wie folgt
<?php header("Content-type: text/html; charset=utf-8"); $xml=new XMLReader(); //载入xml文件,如果是字符串直接使用xml方法 $xml->open("student.xml"); //开始读取xml while($xml->read()){ //根据节点类型和元素名称取得文本节点或属性 if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'item') { print $xml->getAttribute("id") . "</br>"; } if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'name') { //移动指针到下一个节点 $xml->read(); //取得文本节点的值 print $xml->value."</br>"; } if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'age') { $xml->read(); print $xml->value."</br>"; } } ?>
Das Folgende sind die Ergebnisse der Analyse
Verwandte Empfehlungen: Detaillierte Einführung Beispielcode zum Schreiben von XML mit >
printwriter php Einfach Beispielcode für XMLWriter Klassen-RSS-Ausgabe
Das obige ist der detaillierte Inhalt vonPHP realisiert die Methode zum Betreiben von XML basierend auf XMLWriter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!