SimpleXml foreach:忽略元素
SimpleXml foreach : ignore element
<?php
$xml = "<articles>
<article id=\"18357302\">
<articleCategories>
<articleCategory id=\"default\"/>
<articleCategory id=\"66607\"/>
</articleCategories>
</article>
</articles>";
$feed = simplexml_load_string($xml);
$items = $feed->article;
foreach ($items as $article) {
// $categorie = $article->articleCategories->articleCategory[id];
$categories = $article->articleCategories;
print_r($categories);
echo "<br>print_r indeed returns an array, but impossible to echo it using foreach!!!<br>";
foreach ($categories->id as $category) {
if ($category != "default") {
echo $category;
}
}
}
?>
不确定我做错了什么,我只是想找到一种方法来删除 articlesCategories 中具有默认值的部分
<articleCategory id=\"default\"/>
脚本需要忽略这部分,只使用 XML 文件中的下一篇文章类别,我希望避免使用正则表达式删除它
脚本遍历 articleCategories
标签。
但它需要遍历 articleCategory
标签。
以下更改就足够了。
foreach ($categories->articleCategory as $category) {
if ($category["id"] != "default") {
echo $category["id"];
}
}
<?php
$xml = "<articles>
<article id=\"18357302\">
<articleCategories>
<articleCategory id=\"default\"/>
<articleCategory id=\"66607\"/>
</articleCategories>
</article>
</articles>";
$feed = simplexml_load_string($xml);
$items = $feed->article;
foreach ($items as $article) {
// $categorie = $article->articleCategories->articleCategory[id];
$categories = $article->articleCategories;
print_r($categories);
echo "<br>print_r indeed returns an array, but impossible to echo it using foreach!!!<br>";
foreach ($categories->id as $category) {
if ($category != "default") {
echo $category;
}
}
}
?>
不确定我做错了什么,我只是想找到一种方法来删除 articlesCategories 中具有默认值的部分
<articleCategory id=\"default\"/>
脚本需要忽略这部分,只使用 XML 文件中的下一篇文章类别,我希望避免使用正则表达式删除它
脚本遍历 articleCategories
标签。
但它需要遍历 articleCategory
标签。
以下更改就足够了。
foreach ($categories->articleCategory as $category) {
if ($category["id"] != "default") {
echo $category["id"];
}
}