Ist es möglich zu prüfen, ob ein Element mit PHP existiert?Prüfen, ob div ID vorhanden ist (PHP)
Ich kenne die Javascript-Methode bereits, aber ich möchte es nur vermeiden, wenn möglich.
Ist es möglich zu prüfen, ob ein Element mit PHP existiert?Prüfen, ob div ID vorhanden ist (PHP)
Ich kenne die Javascript-Methode bereits, aber ich möchte es nur vermeiden, wenn möglich.
Wenn Sie den HTML-Server-Seite in einem String haben, können Sie DOMDocument verwenden:
<?php
$html = '<html><body><div id="first"></div><div id="second"></div></body></html>';
$dom = new DOMDocument;
$dom->loadHTML($html);
$element = $dom->getElementById('second');
// this will be null if it isn't found
var_dump($element);
* DOMDocument * Objekte haben eine ['getElementById' Methode] (http://php.net/domdocument.geelementbyid). – Gumbo
Wie nutzt er dies auf der Clientseite? -> Er wird Ajax benutzen müssen! – Thariama
Haha, Prost Gumbo, völlig vergessen. Ich habe in letzter Zeit zu viel Bildschirm scraping gemacht. Werde Dich auf dem Laufenden halten. – Shabbyrobe
Nein. PHP kann nur Inhalt liefern, es hat keine Kontrolle oder Sicht auf das DOM außer was Sie es zu erstellen fragen.
Ja PHP dient mehreren Klassen, um ein DOM zu steuern. Nehmen wir zum Beispiel die DomDocument-Klasse. Nicht wirklich perfekt, wenn es zu HTML kommt, das nicht gut formatiert ist, aber es ist dort. – botenvouwer
Nicht direkt, weil PHP nur serverseitig ist.
Aber wenn Sie wirklich wollen, können Sie den gesamten Code Ihrer Seite an ein PHP-Skript auf Ihrem Server mit einer AJAX-Anfrage senden, parse es dort, um herauszufinden, ob ein Div mit einer angegebenen ID existiert (siehe Shabbrobes Post, sicher, das wäre sehr ineffektiv und wird nicht empfohlen, wenn Sie es einfach mit Javascript überprüfen können ...) und das Ergebnis in Ihrer Ajax-Antwort zurückgeben.
Was sind Ihre Gründe dafür es Server-Seite? –
Ein was für ein Element? Ein HTML-Element in einem HTML-Dokument? – Gumbo
Ja zum Beispiel '
' wenn das nicht existiert 'echo 'Test existiert nicht'' – Daryl