1
次のxpathクエリがあります。その属性を持つアイテムではなく、pi-repeat
のアイテムしか見つからないようにする方法はわかりません。属性Xを持つノード内にないhtmlノードを取得
$xpath = new DOMXPath($dom);
foreach ($xpath->query('//*[@pi-repeat]') as $node) {
// Do stuff
}
HTMLの例:
<body>
<div pi-repeat="thing1">
<div pi-repeat="sub-item"></div>
</div>
<div class="a-class">
<div pi-repeat="thing2">
<div pi-repeat="sub-item"></div>
</div>
</div>
</body>
次の4つのpi-repeat
属性が存在し、ここで見ることができるように、私は唯一の要素pi-repeat
属性内にないものを選択するために、私のクエリをしたいと思います。この場合
、唯一thing1
とthing2
は、選択になるだろう。
:それは祖先要素が
pi-repeat
属性を持つ要素をフィルタリングします。また、「親を持つ」と読むこともできます。その場合、答えは「// * [pi-repeat] [not(.. [pi-repeat])]」となります。 –