![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam pytanie.
Chciałbym odczytać jedną linię z pliku tekstowego i na jej końcu ustawić wskaźnik. Czy jest to możliwe bez sprawdzania każdej linii po koleji? Chodzi mi o to, aby ustawić wskaźnik za linią o zawartości linia testowa. Ten post edytował daniel1302 13.02.2010, 09:20:00 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mi, niezbyt zaawansowanemu programiście przychodzi tylko jedno rozwiązanie do głowy, niestety trzeba będzie przy nim sprawdzać każdą linijkę pliku.
Otóż, najpierw wczytujemy plik do tablicy za pomocą file. Potem przechodzimy każdą linijkę za pomocą foreach i sprawdzamy czy to właśnie ta której szukamy dzięki preg_match, kiedy zwróci coś innego niż FALSE to znaleźliśmy. Następnie nadpisujemy daną linijkę, potem implode i file_put_contents. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
- wskaźnik jest umieszczony za znalezioną linią. Jeśli to ma być pierwsza linia, to nie trzeba używać pętli. Pozycję wskaźnika odczytasz funkcją ftell. Nie da się znaleźć wybranej linii bez sprawdzania wszystkich linii po kolei. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Dzięki mam zrobione tj Blame proponował ale chciałem się upewnić, że nie obejdzie się bez pętli
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 16:11 |