我目前正在將一個xml文件分解成多個使用PHP的較小文件。爲此,我從一個標題數組中創建新的xml文件,然後使用foreach循環遍歷原始xml文件,並使用if語句來檢查每個'product'的'子類別'是否匹配相關文件,然後在if語句中添加相關數據。保留來自先前foreach循環的XML文件的多個PHP foreach循環
我的問題是,第一個文件出來只是有關的數據,但後來每一個都有來自先前已填充的文件,以及它自己的數據。下面的代碼顯示了這裏的工作 - 我目前對每個子類別都有單獨的foreach循環,但是從這個我不知道爲什麼,例如,爲了尋找子類別3會選擇子類別1,子類別2和子類別3(雖然我' m可能錯過了相當明顯的東西!)...
foreach($xml->product as $product)
{
// Look for different subcategories
if (strpos($product->category ,'subcategory1') !== false)
{
// write data to xml file and save
$root = $xmlFile->createElement("product");
$root = $xmlFile->appendChild($root);
// These lines are repeated for the various nodes
$xml_node = $xmlFile->createElement("node1");
$xml_node = $root->appendChild($xml_node);
$node1Text = $xmlFile->createTextNode($product->node1);
$node1Text = $xml_node->appendChild($node1Text);
// Re-save the xml file
$xmlFile->save("file.xml");
}
}
任何幫助將不勝感激 - 先謝謝了!
哦,我還簡要試穿foreach循環的一些子類,如果和ELSEIF對於不同的子類使用,但得到了同樣的結果..