Porównanie prędkości PHP od 5.2 do 8.0

Test szybkości PHP 5.2 do PHP 8.0
Uwaga: dane w tabeli podawane są w sekundach (średnia, najkrócej, najdłużej). Średnia oznacza średnią ze wszystkich prób, dla danego testu przy danej wersji PHP. Najkrócej - najkrótszy czas wykonania, jaki udało się osiągnąć, najdłużej - najdłuższy. Błąd pomiaru to standardowa dewiacja wyrażona w procentach. Im mniejsze wartości - tym lepiej!

Łańcuchy znaków UTF8

Widać ogromną poprawę w trzech ostatnich wersjach, to jest PHP 7.3, 7.4 i najnowsza, 8.0. Niestety, tym razem 8.0 nie była tą najszybszą, ale nie ma co narzekać, różnica jest mała. Wcześniej widać, że PHP 5.6 była dobrym momentem dla programistów a 7.0 nieco zawiodła.

Łańcuchy znaków UTF8 - tabela
Łańcuchy znaków UTF8 – tabela
Łańcuchy znaków UTF8 - wykres
Łańcuchy znaków UTF8 – wykres

Tworzenie obrazów

Tworzenie obrazów jest czynnością pracochłonną, z wersji na wersję coraz lepiej optymalizowaną, choć z potknięciami, jak widać w tabeli i na wykresie. W zasadzie, w trakcie używania, spotykają nas tylko dwie niemiłe niespodzianki, choć nie są to jakieś wielkie wartości. Pierwsza taka niespodzianka to wersja 7.1 a druga, niestety, to PHP 8.

Tworzenie obrazów - tabela
Tworzenie obrazów – tabela
Tworzenie obrazów - wykres
Tworzenie obrazów – wykres

Wywołania POST/GET

Ten test był… testem, dla testu. Wiadomo, przy wywołaniach tego typu, liczy się prędkość dysku, to, jak działa serwer. Jednak pewne wnioski i trendy da się z wykresu zaobserwować. Przy tylu powtórzeniach i odrzuceniu skrajnych wyników, to się uśrednia. A wnioski nie napawają jakimś wielkim optymizmem. Owszem, widać próby optymalizacji PHP (i ogromny rozwój samego języka), ale… Wersje 5.3 i 5.4 były takimi czarnymi owcami i niestety, ale ten trend powrócił w 7.3 i 7.4. Oraz, co gorsza, w PHP 8, który „osiągnął” trzeci najgorszy wynik (!).

Wywołania POST i GET
Wywołania POST i GET
Wywołania POST i GET - wykres
Wywołania POST i GET – wykres