Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] funkcja fgets(); - pobieranie określonych wierszy
Forum PHP.pl > Forum > Przedszkole
mpps
witam,
jest sobie funkcja
  1. <?php
  2. fgets($plik, $dlugosc);
  3. ?>
która pobiera linię ze wskaźnika pliku.
drugi parametr określa, jaki zakres danych chcemy pobrać z linii.
aby odczytać wszystkie linie w pliku, wrzucam funkcję w pętlę while(!feof($plik));.

czy istnieje jakiś odpowiednik tej funkcji, który umożliwiłby określenie zakresu linii do odczytania?

na przykładzie:
jest sobie plik z danymi:

1. pierwsza linia
2. druga linia
3. trzecia linia
4. czwarta linia

chcę pobrać dane od linii 2 do 4 z pominięciem 1.
jak to ugryźć?

mam coś takiego:
  1. <?php
  2. function dane($id1){
  3. $daneplik = "dane.txt"; //plik z danymi
  4. if(file_exists($daneplik)){ //sprawdzamy, czy plik istnieje
  5. $plik = fopen($daneplik, "r"); //otwieramy tylko do odczytu
  6. while(!feof($plik)){ //odczytujemy dane, dopóki nie osiagniemy konca pliku
  7. $linia = fgets($plik, 100); //pobieramy linie ze wskaznika, z ograniczeniem do 100 znakow
  8. echo linia.'<br>'; //wyswietlamy pobrane dane
  9. }
  10. fclose($plik); //zamykamy plik
  11. }
  12. }
  13.  
  14. // wyswietlamy
  15. dane($id1);
  16. ?>
Demio
  1. <?php
  2. $linie = file('plik.txt');
  3. echo $linie[2] . '<br />';
  4. echo $linie[3];
  5. ?>


Może coś takiego?
pyro
  1. <?php
  2.  
  3. $plik = file('plik.txt');
  4. for($i = 1; $i <= count($plik); $i++)
  5. {
  6. echo $plik[$i];
  7. }
  8.  
  9. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.