Datein einlesen nach bestimmten vorgegebenen Kriterien

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datein einlesen nach bestimmten vorgegebenen Kriterien

    Moin moin,

    ich bin auf der Suche nach einer PHP-Funktion, mit der ich eine Datei einlesen kann und dabei bestimme Start- und Endekriterien verwenden kann.
    Mit "file()" lese ich eine Datei zeilenweise in ein Array ein, aber wie kann ich dann die Ausgabe kontrollieren?
    Ich will ja bloß einen ganz bestimmten Teil einer Datei, der übrigens immer derselbe ist vom Format (nur der Inhalt ist unterschiedlich!).
    Diese Kriterien sollen einen bestimmten String-Wert erfüllen. Also ich möchte z.B. in einer html-Datei nur den Teil auslesen, der zwischen A und B ist.
    Könnt Ihr mir weiterhelfen?
    Bis dann
    Mario Heiß IT-Services

  • #2
    text zwischen 'A' und 'B' filtern, $content enthält die ganze datei und $table[1] nach der operation das, was zwischen A und B steht.

    eregi liefert false zurück, wenn nichts gefunden wurde.

    Code:
    eregi("A(.*)B", $content, $table);

    CAT Music Files

    Kommentar


    • #3
      Hi,
      vielen Dank für Deinen Tip. Jetzt weiß ich leider immer noch nicht wie ich das Array von file('datei') dann in die Funktion eregi() einbinden kann.
      Ich lese die Datei komplett ein und will nun nicht alle Arrays ausgeben, sondern nur bestimmte Arrays eben zwischen A und B.
      Ich bekomme immer eine leere Ausgabe.
      Hier mein Codebeispiel:
      function Test()
      {
      $A = "<!-- START Hauptfenster -->";
      $B = "<!-- ENDE Hauptfenster -->";
      $fp = file ('xxxxx/xxxxx.php');
      eregi ("$A(.*)$B", $fp, $table);
      print $table[1];
      }

      Muß ich etwa noch eine Schleife programmieren, in der ich dann jedes Array-Element duchlaufe?
      Vielleicht kannst Du mir dann noch mal einen Tip geben.
      Dankeschön.
      Mario Heiß IT-Services

      Kommentar


      • #4
        file() entspricht readfile() und gibt daher keinen vollständigen strings, sondern arrays aus.
        für deinen zweck solltest du diese zeile ersetzen durch:

        Code:
        $inputfilename = 'file.ext';
        $fp = fopen ($inputfilename,'r');
        $content = fread($fp, filesize($inputfilename));
        [Editiert von Sky am 13-07-2001 um 17:30]

        CAT Music Files

        Kommentar


        • #5
          Jup.

          Dankeschön für die Tipps. Werde es jetzt mal ausprobieren und dann Bescheid geben, ob es gefunzt hat.
          Auf alle Fälle besten Dank an Dich.
          Grüße
          Mario Heiß IT-Services

          Kommentar

          Lädt...
          X