Download the PHP package asiby/chronos without Composer
On this page you can find all versions of the php package asiby/chronos. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download asiby/chronos
More information about asiby/chronos
Files in asiby/chronos
Package chronos
Short Description A PHP library to start a timer you can use to track how long an operation takes.
License MIT
Informations about the package chronos
Chronos
A PHP library to start timers for tracking the execution time of some operations in an application.
Introduction
This library was inspired by the Google Chrome DevTools feature that let's you use console.time()
, console.timeLog()
, and console.timeEnd()
to respectively create a timer, log the timer's value, and destroy the timer while printing out the final timer's value.
This is a PHP equivalent of that feature and it offers the following benefits:
- Dead easy to use
- Has no dependencies
- Extremely passive ... it will not throw any error if you don't use it properly.
Installation
Importing the library
Use the following statement at the top of any code where you intend to use Chronos
.
API Documentation
Note that for the sake of simplicity, Chronos
provides static methods only.
Each timer has to have a unique identifier (the label) that will be used when generating the output for that timer.
Creating a timer
Parameters:
$label
: Optional String (default: 'default'). This is the unique identifier for the timer being created.$verbose
: Optional String (default: false). This parameter will make the timer generate some extra information.
Output:
This function will only generate an output if the verbose mode is enabled. The name of the label will be included in the generated output.
The time()
function can be called as many time as needed with different labels. Nothing will happen if you try to create a timer that already exists.
Examples:
Creating a default timer.
Creating a timer called Time taken by the database call
.
Creating a timer called API Request Time
with the verbose mode enabled.
Creating a timer with the default label but with the verbose mode enabled.
Printing a timing log
Parameters:
$label
: Optional String (default: 'default'). This is the unique identifier for the timer being created.$description
: Optional String (default: null). Extra text that allows identifying the context related to a particular time log.$showDelta
: Optional String (default: true). Include the relative time since the last timelogTime()
was called. The first call tologTime()
will no show a delta.
You can't call logTime()
before calling time()
for a given timer.
Alias
Output:
First call ...
Subsequent calls ... Note that the delta is option and is controlled by the showDelta
flag.
Time log that has a description attached
Using friendly label.
Examples:
Printing the time log for the default timer.
Destroying a timer
This function will destroy the timer and log its value, label and optional description provided at the time of the call.
Parameters:
$label
: Optional String (default: 'default'). This is the unique identifier for the timer being created.$description
: Optional String (default: null). Extra text that allows identifying the context related to a particular time log.
The endTime()
function is the last action that can be performed with a timer. Any subsequent call to logTime()
with fail.
Alias
Output:
The second line is logged when the verbose mode was used when creating the timer.
Credits
This implementation is inspired by a Google Chrome DevTools feature.
Contributing
Improvements are welcome! Feel free to submit pull requests.
Licence
MIT
Copyright © 2020 - Abdoulaye Siby