Heim > Backend-Entwicklung > PHP-Tutorial > Detaillierte Erläuterung der Schritte für PHP zum Parsen von XML und zum Generieren von SQL-Anweisungen

Detaillierte Erläuterung der Schritte für PHP zum Parsen von XML und zum Generieren von SQL-Anweisungen

php中世界最好的语言
Freigeben: 2023-03-26 19:56:01
Original
1632 Leute haben es durchsucht

Dieses Mal werde ich Ihnen eine detaillierte Erklärung der Schritte zum Parsen von XML und zum Generieren von SQL-Anweisungen in PHP geben. Was sind die Vorsichtsmaßnahmen für PHP zum Parsen von XML und zum Generieren von SQL-Anweisungen? Fall, werfen wir einen Blick darauf.

Es gibt viele Möglichkeiten, XML in PHP zu analysieren, und es gibt viele davon in der Dokumentation. Suchen Sie einfach danach.

Heute bin ich auf eine Anforderung gestoßen: Knotenattribute aus einer bestimmten XML-Datei extrahieren und dann ein Feld in einer Tabelle in der Datenbank aktualisieren.

Idee:

Parsen Sie das XML und rufen Sie alle Knotenattribute ab –> Schleifen Sie die Knotensammlung ab und rufen Sie die entsprechenden Attribute ab –> es in einem Array –> Konvertieren Sie das Array in eine Zeichenfolge und speichern Sie es in einer Datei

Xpath wird hier beim Schreiben des Codes festgestellt:

1. Der historische Pfad der XML-Datei kann nicht geladen werden, wenn das Attribut D:xx ist..., ändern Sie es einfach in „/“ (das Trennzeichen unter Linux)

2. Holen Sie sich die Attribute eines Knotens, verwenden Sie ::attributes, und der Editor stoppt die rote Eingabeaufforderung, findet das halbtägige Dokument und verwendet schließlich ->getAttribute() (ich schätze, weil es zu seltsam ist, unterstützt es -> previousSibling und ->nodeValue). Folgen Sie dem DOMElement::getAttribute direkt im Dokument. Es wurde ein Fehler gemeldet.

Das Folgende ist der Beispielcode:

<title>xml 转换为 sql</title>
<meta http-equiv=&#39;content-type&#39; content=&#39;text/html; charset=utf-8&#39; />
<style type="text/css">
  .tip_info {margin-bottom:10px;}
  .tip_info span {color:#f00;}
</style>
<?php
$xml = "D:/res/dressConfig.xml";
$doc = new DOMDocument();
$doc->load($xml);
$xpath = new DOMXPath($doc);
$query = "//i";
$entries = $xpath->query($query);
$len = $entries->length;
echo "<p class=&#39;tip_info&#39;>总共找到:<span>".$len."</span>个节点</p>";
$arr = array();
$idx = 0;
while ($idx < $len) {
  $nodeItem = $entries->item($idx);
  $id = $nodeItem->getAttribute("i");
  $name = $nodeItem->getAttribute("n");
  $inf = $nodeItem->getAttribute("inf");
//  echo "<p>".$id.'--'.$name.'--'.$inf."</p>";
  $idx++;
  array_push($arr, "update dress_item t SET t.s_name='".$name."',t.s_intro='".$inf."' WHERE t.n_doid=".$id.";");
}
$dir = "d:/sql/";
if (!is_dir($dir)) {
  mkdir($dir);
}
file_put_contents("d:/sql/dress_item.sql", implode("\n\r", $arr));
echo "生成完毕!";
?>
Nach dem Login kopieren

Weil die Daten generiert werden Aus der Datenbanktabelle ergibt sich, dass die Anzahl der gefundenen Knoten die Gesamtzahl der Datensätze in der Tabelle ist. Nach der Generierung können Sie prüfen, ob der Inhalt korrekt ist, und dann das SQL-Skript ausführen, um den Zweck zu erreichen.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Detaillierte Erläuterung der Schritte zum Übergeben von Parametern beim Öffnen einer lokalen EXE-Anwendung mit PHP und JS

Abhängigkeiten bei der Implementierung der PHP-Klassenreflexion Detaillierte Erläuterung der Injektionsschritte

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schritte für PHP zum Parsen von XML und zum Generieren von SQL-Anweisungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage