Hallo Florian,
Folgendes Prob:
Ich möchte aus einer HTML Datei über PHP ab einer bestimmten Stelle
den Quelltext auslesen. Diese Stelle kann ich ja mit nem speziellen Tag oder
ählichem kennzeichnen, das is nich das Problem...Nur wie fang ich eben an genau der Stelle an, und wie hör ich an einer
anderen bestimmten Stelle wieder aus?
Gar nicht. HTML-Dateien sind ja normalerweise ziemlich klein, bestenfalls mal
ein paar 100KByte. Sowas kannst du problemlos ganz in eine Variable einlesen und
dann weiterverarbeiten. (Wenn php kein Apache-Modul ist verbraucht es mal eben
irgendwas im MByte-Bereich bei einem datei.php Aufruf: Da kommt es auf 100K
mehr auch nicht an.)
Weiterverarbeitung dann mit den Stringfunktionen oder mit regulären Ausdrücken.
Stringfunktion kosten nicht so viel Rechenzeit, sind Anfängertauglicher und
meistens viel umständlicher.
Prinzip:
<?
$fp=fopen("clock.htm","r");
$inhalt=fread($fp,80000); // Zahl zu lesender zeichen, falls Datei kleiner wird bis Dateinende gelesen
if(preg_match("=<meintag>([^<]*)</meintag>=i",$inhalt,$match))
{
$interessant=$match[1]; // $interessant enhält die <meintag> tags nicht mehr !
echo $interessant;
}
else
echo "Tag nicht gefunden";
?>
Noch'n Beispiel, das fischt aus deinem Posting den Text den du geschrieben
hast raus. (Das was in blau da steht.)
<?
$fp=fopen("http://www.teamone.de/selfaktuell/forum/messages/96924.html","r");
$inhalt=fread($fp,80000); // Zahl zu lesender zeichen, falls Datei kleiner wird bis Dateinende gelesen
$start=strpos($inhalt,"<tt>");
$ende=strpos($inhalt,"</tt>");
$interresant=substr($inhalt,$start,$ende-$start);
echo $interresant; // $interresant enhält noch die <tt> tags
?>
Gruss,
Carsten