Sto facendo il benchmark di alcune funzioni. Faccio così:

<?php

$before = microtime();
funzione();
$after = microtime();
echo $after - $before;

?>

A volte mi esce un numero credibile, altre volte ho un numero negativo. Credo che questo sia dovuto al fatto che microtime() restituisce un float, che non è un tipo affidabile. Ma come posso fare a ottenere il risultato sperato? Soprattutto, non vorrei eseguire operazioni tra la prima e la seconda riga, che ovviamente impiegherebbero del tempo...