isswp101/timer

1.1.1 2016-02-18 19:49 UTC

This package is auto-updated.

Last update: 2024-10-28 17:22:45 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

This package allows to measure time and display it to a human readable format 00:00:00.000.

Install

Via Composer

$ composer require isswp101/timer

Usage

With milliseconds:

$timer = new Timer(); // default H:i:s.ms
// some code...
var_dump($timer->end()); // 00:00:07.270

With microseconds:

$timer = new Timer('H:i:s.u');
// some code...
var_dump($timer->end()); // 00:00:07.271315

Deferred output:

$timer = new Timer();
// some code...
$timer->stop();
// some other code...
var_dump($timer->time()); // 00:00:07.270

Deferred output with total measured time:

$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

Simple profiling method with time-ordered output:

$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.

Testing

$ composer test

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please use the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.