Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wydrukowanie zawartości pliku od konkretnego miejsca
Forum PHP.pl > Forum > Przedszkole
PROGer
Witam,
załóżmy że mamy plik new.txt w którym mamy 2 linijki:

ekam:password
Lekam:1

ekam - to nazwa usera
password - to hasło tego usera
Lekam - to nazwa flagi składająca sie z przedrostka L oraz nazwy usera
1 - to wartość flagi

Chciałbym po otwarciu tego pliku, znaleźć unikalny ciąg znaków (Lekam:) i zczytać po tym ciągu kolejny znak czyli 1 i zapisac go do zmiennej.
Istnieje w PHP funkcja która to obsłuży?
nospor
Tak, preg_match()

A jesli tam są tylko te dwie linijki o ktorych mowisz, to mozes sie pobawic nawet explode()
PROGer
Zrobiłem to w taki sposób:


  1. $fp = fopen("plik", "r");
  2. $findstring = 'L'.$GLOBALS["USER"].':';
  3.  
  4. $findresult = preg_match('/'.$findstring.'/',$fp);
  5. print $findresult;


nie ma żadnego wydruku ... gdzie popełniam błąd?

W przykładowym pliku sa 2 linijki ... docelowo będzie ich bardzo dużo. Każdy user będzie posiadał własnie takie 2.
nospor
Czemu zakladasz ze fopen zwraca zawartosc pliku? W manualu wyraźnie napisano co on zwraca.

Wystarczylo tez zrobic
var_dump($fp);
by na wlasne oczy sprawdzic co ci fopen zwraca. Taka analiza na czym sie pracuje naprawde nie jest trudna, jest wrecz banalna i nie wymaga specjalnego wysilku intelektualnego.

O to:
http://php.net/manual/en/function.file-get-contents.php
pobiera od razu zawartosc pliku.
PROGer
Bardzo dziekuję za uwagi które biorę na klatę i za pomoc! smile.gif

Chciałbym jeszcze spytać ... funkcją unset(); można usunąć coś z pliku, a czy jest funkcja do podmiany? Np wartość 1 chcę zamienić na 0
nospor
Nie, funkcja unset nie usuwa nic z pliku.
I nie, nie ma rowniez zadnej funkcji, ktora cokolwiek podmienia w pliku.

By cokolwiek w pliku usunac, to trzeba plik wczytac, skasowac co chcesz skasowac i zapisac plik na nowo.
To samo z podmianą. Trzeba plik wczytac, podmienic co sie chce podmienic i zapisac na nowo
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.