Pamiętam jak byłem niedoświadczonym webmasterem zastanawiałem się jak wyświetlić czas generowania strony. Ot taki nikomu niepotrzebny pierdolnik bo czymś niestety trzeba było zapchać pustą przestrzeń w stopce
Jeżeli zamierzasz umieścić na stronie taki nikomu niepotrzebny bajer to daruj sobie. Co innego jeżeli zamierzasz przeprowadzać bardzo proste testy wydajności.
Na poniższym listingu zostanie przedstawiona funkcja
get_time(), która zwraca bardzo dokładny czas. Gdybyśmy chcieli użyć funkcji
time() to nie uzyskalibyśmy dokładnych wyników pomiaru. Pamiętajmy aby odpowiednio obciążać operacjami testujący kod. Najgłupszym z pomysłów jaki widziałem było liczenie przebiegu pustej pętli. Nie dość, że ktoś niepotrzebnie marnuje prąd to jeszcze pokazuje jaki to jest fajny. Czyż to nie cudne?
Wracając na ziemie... Pętla wywoła się milion razy i za każdym razem wylosuje liczbę, która zostanie zapisana do zmiennej. Prawda, ze proste?
Kod:<?php
function get_time()
{
list($usec, $sec) = explode(' ', microtime());
return ((float)$usec + (float)$sec);
}
$tmp['start'] = get_time();
for($h = 0; $h < 1000000; ++$h)
{
$tmp['random_number'] = rand();
}
echo round((get_time() - $tmp['start']), 8);
?>
Na koniec wspomnę o precyzji. Jak widzimy końcowy wynik zaokrągla się do ósmego miejsca po przecinku. Jeżeli uznacie, że potrzebujecie więcej wtedy zmieńcie 2 parametr funkcji
round().
Więcej informacji na:
http://php.net/manual/pl/function.explode.php
http://php.net/manual/pl/function.list.php
http://php.net/manual/pl/function.microtime.php
http://php.net/manual/pl/function.round.php
Komentarze
Brak komentarzy
Dodaj komentarz
Zezwolono używać:
BBCode
Zabroniono używać:
znaczników HTML