Timer
![Software License][ico-license]
![Coverage Status][ico-scrutinizer]
![Total Downloads][ico-downloads], (*1)
This package allows to measure time and display it to a human readable format 00:00:00.000., (*2)
Install
Via Composer, (*3)
``` bash
$ composer require isswp101/timer, (*4)
## Usage
With milliseconds:
``` php
$timer = new Timer(); // default H:i:s.ms
// some code...
var_dump($timer->end()); // 00:00:07.270
With microseconds:, (*5)
``` php
$timer = new Timer('H:i:s.u');
// some code...
var_dump($timer->end()); // 00:00:07.271315, (*6)
Deferred output:
``` php
$timer = new Timer();
// some code...
$timer->stop();
// some other code...
var_dump($timer->time()); // 00:00:07.270
Deferred output with total measured time:, (*7)
``` php
$timer = new Timer;
foreach ($items as $item) {
// some code...
$timer->start();
// code for measurement... (1)
$timer->stop();
// some code...
}
var_dump($timer->time()); // total (1) time, (*8)
Simple profiling method with time-ordered output:
``` php
$timerPool = new TimerPool;
$timerPool->start('A');
$timerPool->start('B');
usleep(1000000); // some code...
$timerPool->stop('B');
$timerPool->start('C');
usleep(3000000); // some code...
$timerPool->stop('C');
$timerPool->start('D');
usleep(2000000); // some code...
$timerPool->stop('D');
$timerPool->stop('A');
print_r($timerPool->build());
// Array
// (
// [A] => 00:00:06.004
// [C] => 00:00:03.001
// [D] => 00:00:02.000
// [B] => 00:00:01.003
// )
Change log
Please see CHANGELOG for more information what has changed recently., (*9)
Testing
bash
$ composer test, (*10)
Contributing
Please see CONTRIBUTING and CONDUCT for details., (*11)
Security
If you discover any security related issues, please use the issue tracker., (*12)
Credits
License
The MIT License (MIT). Please see License File for more information., (*13)