<?php
/**
* Basic timer class
* Returns value in seconds

* @name : timer
* @author : Ed Cradock
*/
class timer
{
   
/**
    * Start time
    * @var float
    * @access private
   */
   
private $start;

   
/**
    * End time
    * @var float
    * @access private
   */
   
private $end;

   
/**
   * Class constructor
   *
   * @access public
   */
   
public function __construct()
   {
      
$this->reset();
   }

   
/**
   * Start the timer
   *
   * @access public
   * @param foo $foo - bar
   * @return void
   */
   
public function start()
   {
      
$this->start microtime(true);
   }

   
/**
   * Finish the timer
   *
   * @access public
   * @return void
   */
   
public function finish()
   {
      
$this->finish microtime(true);
   }

   
/**
   * Returns the elapsed time in seconds (not rounded off)
   *
   * @access public
   * @return float
   */
   
public function result()
   {
      return (
$this->finish $this->start);
   }

   
/**
   * Reset the timer
   *
   * @access public
   * @return void
   */
   
public function reset()
   {
      
$this->start 0;
      
$this->finish 0;
   }
}
?>