microtime()関数で、現在のタイムスタンプをマイクロ秒単位で取得できます。よって処理前後でこれの差を求めることで、処理時間を調べられます。結果はfloat型で、単位は[秒]となります。
$start = microtime( TRUE );
// ここで計測対象の処理をする
echo microtime( TRUE ) - $start;
microtime()の引数にTRUEを設定しない場合、結果のタイムスタンプは文字列で返されます。そのときはこのように単純に減算で求めることはできません。なおPHP 5.0より前の環境では、TRUEの設定はできません。
ちなみに、microtime()の構文は次の通りです。
mixed microtime ([ bool $get_as_float = FALSE ] )PHP: microtime - Manual
たとえば次のように実行すると、
$start = microtime( TRUE );
// 1000マイクロ秒、つまり0.001秒だけ待つ
usleep( 1000 );
echo microtime( TRUE ) - $start;
結果は
0.0010750293731689
のように出力されます。(ここで0.001となっていないのは、usleep()による誤差です)