私は問題に遭遇し、私は解決策をオンラインで見つけることができません。だから問題は、私はPHP DOMを持つ特定の子供にクラスを追加する手がかりがないということです。私のHTMLは次のようになります:特定の子供を選択してクラスを追加するPHP DOM
<div class="grid grid-flex gutters-horizontal">
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
</div>
<div class="grid grid-flex gutters-horizontal">
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
</div>
私が望むのは、すべての "グリッドグリッドフレックス"の子供にユニークなクラスを与えることです。つまり、すべての「グリッド項目の結果エントリ」に追加の一意のクラスが必要です。例えば、このような何か:
<div class="grid grid-flex gutters-horizontal">
<dl class="grid-item result-entry unique_1">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry unique_2">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry unique_3">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
</div>
<div class="grid grid-flex gutters-horizontal">
<dl class="grid-item result-entry unique_1">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry unique_2">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
<dl class="grid-item result-entry unique_3">
<dd class="font-nowrap font-line">Foo</dd>
<dt class="font-s onlyLarge">Foo</dt>
</dl>
</div>
私のコードは次のようになります。
$kaltMieteFinder = new \DOMXPath($doc);
$kaltMieteLists = $kaltMieteFinder->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $findKaltMiete ')]");
$findingkaltMiete = new \DOMDocument();
foreach ($kaltMieteLists as $kaltMieteList) {
$findingkaltMiete->appendChild($findingkaltMiete->importNode($kaltMieteList,true));
}
$mieteHTML.=trim($findingkaltMiete->saveHTML());
は、どのように私はそれを達成することができますか?
ありがとうございました。これは完全に機能しました。乾杯。 –
喜んで助けてください。がんばろう! – splash58