誰かが私を助けてくれるかもしれない問題があります。私は経験豊富なプログラマーではありませんが、より多くを学ぶことができるように、高度な回答をいただいても構いません。
xml ファイルをダウンロードして開き、読み取ります。特定の条件が満たされると、そのノードの値を変更すると、これは正常に機能します。しかしその後、変更したばかりのノード全体を新しいxmlファイルに書きたいのですが、ここで問題が発生しました。新しいドキュメントの既存のノードを常に上書きしていることを示す最後のノードを保存することができました。
これは私のコードです:
$prodsToSave = new DOMDocument(); //my new document
$prods = new DOMDocument();
$prods = simplexml_load_file('http://urltofile.com');
foreach ($prods as $product) {
if($product->merchantCategoryName == 'CD') {
$productToSave = $product;
$productToSave->merchantCategoryName = 'Musik > CD';
$prodsToSave=$productToSave;
}
$prodsToSave->saveXML('newdocument.xml');
}
新しいドキュメントにノードが 1 つしか書き込まれていない理由はわかりますが、それを変更する方法がわからないので、すべてのノードを新しいドキュメントに取得しますか?