Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: fscanf() pliku zewnętrznego?
Forum PHP.pl > Forum > Przedszkole
latet
Witam,

Mam sobie skrypt, który czyta i analizuje dane z typowych plików logów apacza. Ponieważ pliki te bywają wielkie, nie mogę stosować funkcji file(), muszę czytać linia po lini i robię to tak:

  1. <?php
  2.  
  3. $f = fopen ($logfile, "r");
  4.  
  5. while (!feof ($f)) 
  6. {
  7.  
  8.  $linijka_TAB = fscanf($f,'%s %s %s [%s %d] "%s %s %[^"]" %s %s "%[^"]" "%[^"]');
  9.  
  10. // (...) potem juz prosta zabawa z elementami tablicy $linijka_TAB
  11.  
  12. }
  13.  
  14. ?>


Teraz zmieniłem hosting (na Home.pl) i pojawił się problem - nie mam bezpośredniego dostępu (z poziomu php) do plików logów serwera. Są jednak udostępnione przez http://...

Pytanie:
Jak przerobić powyższy skrypt, aby robił to samo co robi, lecz na plikach zewnętrznych? Czy to w ogóle będzie możliwe?

Dzięki,

latet
s_w_ir
MOże głupie pytanie, ale czy próbowałeś w takiej posatci jak masz teraz skrypt tylko żeby w fopen podac adres
  1. <?php
  2. fopen("http://www.przyklad.com/", "r");
  3. ?>

Z manuala wynika że powinno przejść takie coś bez problemu.
latet
Cytat(s_w_ir @ 2005-10-02 21:06:02)
MOże głupie pytanie, ale czy próbowałeś w takiej posatci jak masz teraz skrypt tylko żeby w fopen podac adres
  1. <?php
  2. fopen("http://www.przyklad.com/", "r");
  3. ?>

Z manuala wynika że powinno przejść takie coś bez problemu.

Samo fopen() niby bez problemu, ale problemy zaczynają się na etapie fscanf. Dodstaję jakąś binarną sieczkę, zamiast tego co powinieniem. Tak jakby plik .txt pod adresem http:// był zakodowany. A nie jest.

Dzięki,

latet
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.