Support » Plugins » Inhalt einer .txt auslesen

  • Hallo,

    ich möchte ein simples Plugin programmieren, welches den Inhalt einer .txt Datei ausliest.

    Ich habe es mit file_get_contents() probiert.
    Wenn ich eine URL aufrufe, dann funktioniert es ohne Probleme.

    z.B.:

    <?php
    $page = file_get_contents('http://www.example.com/');
    echo $page;
    ?>

    Wenn ich allerdings versuche eine Textdatei auszulesen (die ich im gleichen Ordner hochlade) funktioniert es nicht. Ich bekomme die Werte leider nicht ausgelesen.

    <?php
    $file = file_get_contents('./test.txt');
    echo $file;
    ?>

    Ich habe auch schon verschiedene Pfade versucht und auch den genauen Pfad angegeben usw. Aber es bringt nichts.

    Die .txt Datei hat Lese und Schreibrechte.

    Ich habe gelesen, das manche Hoster die Funktion file_get_contents() aus Sicherheitsgründen deaktiviert haben (wahrscheinlich in der php.ini?).
    Mein Hoster sagt leider, dass er da nichts aktivieren kann (da es kein dedicated hosting ist).

    Welche Lösungen/Alternativen gibt es? Irgendwie muss es doch funktionieren, eine simple .txt Datei auszulesen.

    Vielen Dank im Voraus.

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Hallo,
    vielleicht beschreibst du erst, wozu du das genau brauchst, damit wir vielleicht prüfen können, ob es nicht andere Möglichkeiten gibt.

    Es gibt z. B. im WordPress-Repository das Plugin Read Text File mit dem man offensichtlich Textdateien per Shortcode ausgeben kann. Allerdings ist dieses Plugin bereits mehr als 11 Jahre alt. Ob dieses Plugin auch hinsichtlich Sicherheit ok ist, habe ich nicht geprüft.
    Evtl. könnte das Plugin aber auch eine Basis sein, um das zu bewerkstelligen, was du machen möchtest.

    Viele Grüße
    Hans-Gerd

    Ich habe gelesen, das manche Hoster die Funktion file_get_contents() aus Sicherheitsgründen deaktiviert haben

    Ich kann mir viel vorstellen, aber das nicht. Mal davon abgesehen, dass das hier kein Forum für Programmierer ist, sollte man zumindest ein einfaches Testprogramm auf die Reihe bekommen, mit dem man testen kann, das kann man erwarten.

    Ausgehend davon, dass die Datei im gleichen Verzeichnis wie das Script liegt:

    <?php
        $filename = __DIR__ . "/test.txt";
        
        if (file_exists($filename))
        {
            $data = file_get_contents($filename);
            
            if (strlen($data))
              die("Alles Paletti");
            else
              die ("Lesen ist in die Hose gegangen");
        }
        else
          die("Datei $filename nicht vorhanden");
    ?>
Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)