在我的PHP代码中添加'break'

时间:2012-01-15 16:19:41

标签: php xml foreach

最近我使用php来处理xml文件。

但我不知道如何在我的代码中添加“中断”。

链接是:http://babystory.diandian.com/rss

我想用php来获取名为'[x]快乐王子'的文章。但是“foreach()”给我上一篇名为'[1]狼和七只小山羊'的文章。

我想在“foreach()”中添加一个中断,以便我可以获得我想要的文章。

这是我的php代码:

<?php
$xml = simplexml_load_file("http://babystory.diandian.com/rss");

foreach($xml->children() as $child){}

foreach($child->children() as $child2)

foreach($child2->children() as $child3)
{
  $element = $child3->getName();
  if($element=='title')
  {
    echo "<h1>" . $child3 . "</h1>";
  }

  if($element=='description')
  {
    echo $child3;
  }
}
?>

你能帮我编辑我的代码吗。非常感谢你。

2 个答案:

答案 0 :(得分:2)

如果您需要从Feed中获取第一项,则根本不需要任何foreach循环。

$xml = simplexml_load_file("http://babystory.diandian.com/rss");
$item = (array)$xml->channel->item[0]; // the article [x]快乐王子 array

现在$item是第一篇文章信息的数组。所以$item['title']是[x]快乐王子,$item['link']http://babystory.diandian.com/post/2012-01-15/14770976等等。

答案 1 :(得分:0)

在你的最后一个foreach中尝试这个....

即。 .....

foreach($child2->children() as $child3){
   if($child3->getName() == "title" && $child3 == "THE TITLE I WANT"){
       $saveItem = $child3;
       break 3;
   }
}
echo $saveItem;