Hallo dedlfix,
Ich lese mittels file_get_contents eine Webseite ein, anschliessend säubere ich den Code mit strip_tags. Doch leider bleibt, wenn vorhanden javacript zurück. Wie bekomme ich den javascript auch aus dem Code.
Mit strip_tags() gar nicht. Entweder du hast in deinem Fall ein Muster, das du mittels regulärem Ausdruck finden kannst, oder du willst unbekannte Texte lesen, dann brauchst du einen HTML-Parser, der sowas wie ein DOM erzeugt. Dann kannst du darin die Elemente suchen. Wenn du dann auch noch Javascript-Inhalte in Attributen finden möchtest, ... das wird nicht einfach.
Einfacher als du vielleicht glaubst. JS in Attributen ist irrelevant, das wird durch strip_tags
entfernt. JS aus Tags kann man mit DOMDocument
entfernen:
<?php
$dom = new DOMDocument();
$dom->loadHTML($html);
$scripts = $dom->getElementsByTagName('script');
foreach($scripts as $item) {
$item->parentNode->removeChild($item);
}
$html = strip_tags($dom->saveHTML());
LG,
CK