一度しか実行されない foreach ループがあり、困惑しています。
1: ステータス値の配列をロードします (「リクエスト」、「削除」、または「購入済み」のいずれか)。
2:次にxmlファイルをロードし、「コード」ノードをループしてステータスを更新する必要がありますが、新しいコードが「削除」されている場合は、次のコードに移動する前に削除したい
XML構造は....
<content>
.... lots of stuff
<codes>
<code date="xxx" status="request">xxxxx</code>
.. repeat ...
</codes>
</content>
PHPコードは...
$newstatus = $_POST['updates'];
$file = '../apps/templates/'.$folder.'/layout.xml';
$xml2 = simplexml_load_file($file);
foreach($xml2->codes->code as $code){
if($code['status'] == "delete") {
$dom=dom_import_simplexml($code);
$dom->parentNode->removeChild($dom);
}
}
$xml2->asXml($file);
削除チェックをデバッグできるように、更新を一時的に削除しました。これはすべて機能しますが、最初の削除のみを削除し、foreach ループであっても他のすべての削除を残します??. どんな助けでも大歓迎です。