【问题标题】:SimpleXML get next/prev nodeSimpleXML 获取下一个/上一个节点
【发布时间】:2010-10-21 15:39:02
【问题描述】:

我正在构建一个照片库,基于一个 xml 文件构建一个对象。

如何获取下一个和上一个节点?这是我的基本代码的样子:

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

【问题讨论】:

    标签: php object loops


    【解决方案1】:

    仅当下一个/上一个节点属于同一类型时才可用。如果您想要更复杂的处理,请使用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++;
    }
    

    【讨论】:

    • Alin,感谢您为清晰起见对我的帖子进行了编辑;你真棒!这效果很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-07
    • 2012-04-12
    • 1970-01-01
    相关资源
    最近更新 更多