SimpleXML получить следующий / предыдущий узел - PullRequest
1 голос
/ 21 октября 2010

Я строю фотогалерею, строю объект на основе XML-файла.

Как я могу получить следующий и предыдущий узлы? Вот как выглядит мой базовый код:

$xmlData = new SimpleXMLElement(file_get_contents("data.xml"));
foreach($xmlData->row as $item) {
    if ($item->url == $_GET['id']) {
        // show photo
        $title = $item->title;
    }
}

1 Ответ

0 голосов
/ 21 октября 2010

Используется только в том случае, если следующие / предыдущие узлы имеют тот же тип. Если вы хотите более сложную обработку, используйте DOM .

$xmlData = new SimpleXMLElement(file_get_contents("data.xml"));
$index = 0;
foreach($xmlData->row as $item) {
    if ($item->url == $_GET['id']) {
        // show photo
        $title = $item->title;

        $prev = $xmlData->row[$index-1];
        $next = $xmlData->row[$index+1];
    }
    $index++;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...