Добавить 'перерыв' в моем PHP-код - PullRequest
0 голосов
/ 15 января 2012

В последнее время я использую php для работы с xml-файлом.

Но я не знаю, как добавить 'break' в мой код.

Ссылка: 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 ]

2 голосов
/ 15 января 2012

Если вам нужно получить первый элемент из вашего канала, вам вообще не нужны циклы 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, и т. Д.

0 голосов
/ 15 января 2012

Попробуйте это в вашем последнем foreach ....

т.е. .....

foreach($child2->children() as $child3){
   if($child3->getName() == "title" && $child3 == "THE TITLE I WANT"){
       $saveItem = $child3;
       break 3;
   }
}
echo $saveItem;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...