Skip to content

devemio/php-readable-timer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Timer

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.

About

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

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages