Ausgabe einer Website (URL) in eine Variable speichern?

  • Also obige Frage interessiert mich. Ich möchte also den Output einer URL-Adresse (das dürfte ja HTML-Code sein) in eine PHP-Variable speichern um diesen Inhalt dann weiter zu verarbeiten.

    Mein jetziger Ansatz sieht so aus:

    Code
    $file = fopen("http://www.web.de","r");
    $readData = fread($file, 1024*60);  // 60kB
    fclose($file);

    Aber das will nicht klappen.

    "Carpe Diem" powered by positiv Feelings

  • Moin!

    Du kannst mit einem Open-Befehl nicht auf fremde Dateien zugreifen.

    Warum liest du die Datei nicht einfach in ein Array ein, dann hast du den gesamten Quelltext Zeile für Zeile:

    Code
    $Datei = file("http://web.de");


    Das ist eigentlich schon alles. Nun kannst du auf jede Zeile des Quelltextes einzeln zugreifen (so trickst man übrigens notfalls auch die Javascript-Rechtsklicksperre aus *fg*), wenn du z.B. gezielt die 15. Zeile brauchst, dann ist das ganz einfach ...

    Code
    echo $Datei[14]

    Du hast also jetzt ein Array mit dem gesamten Quelltext, das kannst du überprüfen, indem du den Quelltext zeilenweise wieder ausgeben läßt, dann müßte die ursprüngliche Seite wieder fast richtig angezeigt werden. Probleme gibt es allerdings mit relativ adressierten Verknüpfungen, wie z.B. Stylesheetdateien. weil die nicht mit eingelesen werden und der Bezug dann fehlen kann. Ansonsten

    Code
    for($i=0;$i<count($Datei);$i++) echo $Datei[$i]."
    ";

    und wenn du dir hinter "echo" zunächst noch den Wert für $i schreibst, dann wird die Ausgabe zwar unübersichtlich, aber du hast dann gleich die Zeilennummer neben jedem Text:

    Code
    for($i=0;$i<count($Datei);$i++) echo "$i=".$Datei[$i]."
    ";

    Für alle, die das jetzt ausprobieren wollen: bitte nehmt zum Testen nicht immer nur 'web.de', sonst werden die womöglich böse ;)

    G.a.d.M.

    Ronald

  • Vielen Dank! Da lag ich mit meiner Variante ja nicht ganz weit daneben *g*

    Damit sollte es klappen. Thx.

    "Carpe Diem" powered by positiv Feelings