2009-11-18

PHP - file_get_contents vs fread

Postanowiłem zrobić test tych dwóch metod w php - oto wyniki:

Wielkość pliku: 1 MB
Średnio sec - file_get_contents: 0.00464092731476
Średnio sec - fread : 0.00363778591156
Ilość testów : 100
Różnica - 0.0010031414032 sec "fread " zrobił szybciej


Wielkość pliku: 10 MB
Średnio sec - file_get_contents: 0.0445784425735
Średnio sec - fread : 0.0334163689613
Ilość testów : 100
Różnica - 0.0111620736122 sec "fread " zrobił szybciej

Wielkość pliku: 100.02 MB
Średnio sec - file_get_contents: 0.443726112517
Średnio sec - fread : 0.301650702525
Ilość testów : 100
Różnica - 0.142075409992 sec "fread " zrobił szybciej

Czyli "fread " jest szybszy od file_get_contents, lecz wymaga wiecej kodu tzw file_get_contents wymaga tylko użycia jednej metody a fread wymaga uchwytu do pliku z prawami odczytu oraz zamknięcia pliku - czyli z 3 linie kodu ;)

Czyli najlepiej zrobić sobie klasę do obsłgi plików gdzie będziemy mieć $fileHeadler->readFile( $pPlik ): gdzie klasa już sprawdzi czy taki plik jest, odczyta, zamknie plik. ( dodamy sobie jeszcze dodawanie do pliku, tworzenie pliku, pobieranie wielkości, czasu, usuwanie i mamy niezłą obsługę plików :) )

Brak komentarzy:

Top 5 List