PHP Simple HTML DOM Parser: Wählen Sie nur Divs mit mehreren Klassen aus

Ich suchte wie verrückt und fand keine Lösung. Das Problem ist einfach.

Angenommen, ich habe 3 Tauchgänge:

<div class="class1">
  <div class="subclass"> TEXT1 </div>
</div>

<div class="class2">
  <div class="subclass"> TEXT2 </div>
</div>

<div class="class1 class2">
  <div class="subclass"> TEXT3 </div>
</div>

Also sehr einfach. Ich möchte nur den TEXT3 finden, der BEIDE Klassen 1 und 2 hat. Mit Simple HTML DOM Parser kann ich es scheinbar nicht zum Laufen bringen.

Folgendes habe ich versucht:

foreach($html->find("[class=class1], [class=class2]") as $item) {
$items[] =  $item->find('.subclass', 0)->plaintext;
}

Das Problem ist, mit

find("[class=class1], [class=class2]")

Es findet alle von ihnen, da das Komma wie ein ODER ist. Wenn ich das Komma lasse, sucht es nach verschachtelter Klasse2 in Klasse1. Ich suche nur ein UND ...

BEARBEITEN

Dank 19greg96 habe ich das herausgefunden

div[class=class1 class2]

funktioniert, das Problem ist, dass es genau diese beiden in dieser Reihenfolge sucht. Sagen wir, ich habe

<div class="class1 class2">
  <div class="subclass"> TEXT3 </div>
</div>

dann klappt es und wenn ja

<div class="class1 class2 class3">
  <div class="subclass"> TEXT3 </div>
</div>

es funktioniert, wenn ich ein Sternchen setze, wie es nach dem Teilstring aussieht:

div[class*=class1 class2]

PROBLEM

Ich weiß nur, dass class1 und class3 da sind, aber vielleicht andere und in zufälliger Reihenfolge. Das geht immer noch nicht. Irgendeine Idee, wie man einfach in zufälliger Reihenfolge nach A & B sucht? Damit

div[class=class1 class3]

arbeitet mit diesem Beispiel?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage