私は理解しようとしている非常に奇妙なバグを持っています。xml を読み込み、特定のノードを見つけて削除し、ファイルを保存します。しかし、私がそれを実行すると、最初の実行でそれらのノードの一部しかキャッチされず、最終的に終了するまで2回目と3回目の実行でさらにいくつかのノードがキャッチされます。なぜこれが起こっているのかを理解できる理由はありません。これが私のコードです:
foreach(glob("*.xml") as $filename) {
$domsrc = file_get_contents($filename, FILE_TEXT);
$MYdom = new DomDocument();
$MYdom->loadXML($domsrc);
foreach ($MYdom->getElementsByTagName('URL') as $virttour) {
if($virttour->getAttribute('Type') == 'Virtual Tour') {
$virttour->parentNode->removeChild($virttour);
}
}
$MYdom->save($filename);