Может ли искать указанный c текст заголовка и отображать только описание xml? - PullRequest
2 голосов
/ 09 января 2020
<code>    <?php
  $xml=simplexml_load_file("example.com") or die("Error: Cannot create object");
  foreach ($xml->children() as $items) {
    echo "<pre>";
    print_r($items);
    echo "
"; echo $ items-> title; echo $ items-> description;}?>

Я пытаюсь найти в этом заголовке название, которое называется spesifi c пример (см. фото): «Ev 134 Haukelifjell (Vestfold og Telemark / Vestland)». После того, как это найдено, я хочу отображать только описание, которое следует после заголовка, помеченного желтым (см. фото). Это можно сделать с помощью xml?

Изображение относится к: Вывод

Последнее сообщение было удалено из-за дубликата. Если это так, вы также можете обратиться к c место, где описана моя проблема. Я очень плохо знаком с программированием и не очень много знаю.

Ответы [ 2 ]

0 голосов
/ 10 января 2020

Вы пытаетесь разобрать канал RSS, поэтому вы можете сделать это следующим образом:

function Feed($url) {
    $feed = simplexml_load_file($url);
    $result = array();
    foreach ($feed->channel->item as $content) {
        array_push($result, $content);
    }
    return $result;
}

$title = 'Ev 134 Haukelifjell'; // The title you want to search for

foreach(Feed('https://www.vegvesen.no/trafikk/xml/savedsearch.rss?id=604') as $f ) {
    if (strpos($f->title, $title) !== false) 
        echo $f->description;
}

Вывод:

Vær- og føreforhold: Snø- og isdekke. Klokken 23:05 var det -7 grader, svak vind og klart. Gjelder fra: 09.01.2020 23:14 
0 голосов
/ 10 января 2020

Я не уверен, что это именно то, что вы ищете, но вы можете использовать xpath здесь (и изменить его по своему желанию); поэтому попробуйте какую-нибудь версию этого:

foreach ($xml->xpath('//item/title[contains(text(),"134 Haukelifjell")]/text()') as $items) 
  { 
    echo $items;
    foreach ($items->xpath('./following-sibling::description/text()') as $desc)
    echo $desc;   
     }

Я получаю этот вывод:

Ev 134 Haukelifjell (Vestland/Vestfold og Telemark) Vær- og føreforhold: Snø- og isdekke. Klokken 18:15 var det -5 grader, laber bris og skyet. Gjelder fra: 09.01.2020 18:17
...