( Benchmarking / Profiling / Timing ) class to measure the amount of time , memory (server load) that elapses between two (or more) points.
"require": {
"maddrid/bench": "dev-master"
}
As Simple as Possible
use Maddrid\Bench as Bench ;
Bench::start('first_point');
do_some_math
Bench::start('second_point');
do_more_math
Bench::stop('second_point');
Bench::start('third_point');
do_more_math
Bench::stop('third_point');
Bench::stop('first_point');
//more details
Bench::printTimers(true);
keep it simple
Bench::printTimers();
Bench::getTimers();
Bench::getTimers(null);
Bench::getTimers(true);
Bench::getTimers(null,5);
Bench::getTimers(true,5);
Bench::stop('first_point');
// will get server load
Bench::stop('first_point',true);
When getting server load
Bench::stop('first_point',true);
Will add aditional seconds on the checkpoint . If checkpoint is nested , "the Parent/s " checkpoints will inherit those seconds .