class Selector extends Constraint

Mit der Selectorklasse kann man eine einfache jquery-ähnliche Suche durchführen.

Struktur

Mehrere unterschiedliche Suchen können durch Komma voneinander getrennt werden. Will man nach der Klasse red und blue suchen gibt man .red, .blue ein. Gemeinsame Bedigungen (und) werden durch ein Leerzeichen getrennt. Die Suche nach Elementen die .red und blau besitzen so muss man diese folgendermassen übergeben: .red .blue

Elemente

Die Suche nach Klassen erfolgt über einen vorangestellten Punkt .red, die Suche nach einer ID erfolgt über eine Raute # und die Suche nach einem Tag erfolgt über den Namen des Tags.

Beispiel

$html = <<<EOF
<div>
  <article>
    <span>  <a id="car">My World1</a></span>
      <a id="hotspot" href="" data-attributes="href map:url">My World2</a>
      <a id="myid" class="bootstrap last hl">My World3</a> Hallo <b>Sepp</b>!
      <a id="myid2" class="bootstrap  hl">My World3</a>
 </article>
</div>
EOF;

$fragment = \Alvine\Markup\Html\Fragment::getInstanceFromString($html);
echo (string) $fragment->find(new Selector('#car'));
// Ergibt <a id="car">My World1</a>

echo (string) $fragment->find(new Selector('.last'));
// Ergibt <a id="myid" class="bootstrap last hl">My World3</a>

Hinweis

Die Funktionalität ist nicht identisch zu jquery, aber an den Syntax angelehnt.

Properties

protected Constraint $constraints

Methods

__construct(string $query)

Neues Objekt erstellen.

boolean
isValid(mixed $value)

Prüfung ob der übergebene Wert nicht NULL ist.

Constraint
parse(string $query)

Query parsen und Constraint bauen

Details

at line 87
__construct(string $query)

Neues Objekt erstellen.

Parameters

string $query

at line 101
boolean isValid(mixed $value)

Prüfung ob der übergebene Wert nicht NULL ist.

Parameters

mixed $value Wert

Return Value

boolean Ergebnis der Prüfung

at line 112
protected Constraint parse(string $query)

Query parsen und Constraint bauen

Parameters

string $query

Return Value

Constraint