# Aus Textdatei nur bestimmte Zeilen auslesen?



## Extremniki (10. November 2002)

Ich habe eine Textdatei in der folgende Einträge stehen:


001111|-|Mallorca|-|Wein 1|-|4.50|-|

003333|-|mallorca|-|wein 2|-|6.59|-|

002222|-|mallorca|-|wein 3|-|4.99|-|

110000|-|spanien|-|wein 4|-|5.89|-|

113333|-|spanien|-|wein 5|-|9.99|-|

225555|-|frankreich|-|wein 6|-|8.98|-|

Hier stehen am Anfang immer die Artikelnummern, und nach denen möchte ich jetzt auslesen. Also, dass z.B. Nur die Zeilen ausgelesen werden, wo die ersten beiden Stellen der Artikelnummer mit 0 anfangen (Also alle zwischen 000000 und 009999). Wie packe ich das in eine Funktion?

Mein bisheriges Script, was alle anzeigt lautet:


```
<?
$log = "liste.txt";
$inhalt = file($log);
$anzahl = count($inhalt);
echo "<p>es sind bisher $anzahl Einträge in der Weinliste </p>"; 
$fp = fopen("liste.txt","r"); for ($i=0; $i<$anzahl; $i++)
?>
      <?$log = "liste.txt";
$inhalt = file($log);

// durchlaufe jede zeile...
foreach ($inhalt as $zeile) {
  $eintrag[] = explode("|-|", $zeile);
}



// ausgabe
foreach ($eintrag as $e) {

echo $e[0];
echo $e[1];
echo $e[2];
echo $e[3];
?>
```

Es muss also nach $e[0] gefiltert werden.

Hat da einer einen Tip?


----------



## Tob (10. November 2002)

```
foreach_($eintrag_as_$e)_{
   if(substr($e[0], 0,2 ) == "00"){
    echo_$e[0];
    echo_$e[1];
    echo_$e[2];
    echo_$e[3];
  }
}
```
oder schon davor:

```
if(substr($eintrag, 0,2 ) == "00"){
foreach_($eintrag_as_$e)_{
    echo_$e[0];
    echo_$e[1];
    echo_$e[2];
    echo_$e[3];
  }
}
```

kannst mal da gucken: substr 

tob


----------



## Extremniki (10. November 2002)

*supi!*

super, das war ja einfach! danke!

gruß nikolaj


----------

