SimpleXML オブジェクトのセットを反復処理していますが、各オブジェクトの親ノードにアクセスする方法がわかりません。必要なのは次のようになります。
$divs = simplexml->xpath("//div");
foreach ($divs as $div)
{
$parent_div = $div->get_parent_node(); // Sadly, there's no such function.
}
どうやら、これを行うにはかなり簡単な方法があるようです。
ベストアンサー1
これを取得するには、簡単な XPath クエリを実行できます。
$parent_div = $div->xpath("parent::*");
これは Simplexml であり、要素ノードと属性ノードのみを持ち、親ノードは要素のみで属性にはなれないため、省略された構文を使用できます。
$parent_div = $div->xpath("..");
(経由:一般的な Xpath チート - SimpleXML タイプのチートシート (2013 年 2 月、hakre 著))