NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #52 most downloaded on Packagist
Utility class for timing
Last release 8 months ago
06 Feb 2026
Release timing varies
gaps range from 3 weeks to 2.2 years
Most releases are documented
notes for 20 of 29 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
29 releases · first in 2012
This component is no longer supported on PHP 8.3
This component is no longer supported on PHP 8.1
One column per quarter.
This project now uses PHPStan instead of Psalm for static analysis
This component is no longer supported on PHP 8.1
This component is no longer supported on PHP 7.3, PHP 7.4 and PHP 8.0
SebastianBergmann\Timer\Exception now correctly extends \Throwable
SebastianBergmann\Timer\Exception now correctly extends \ThrowableChanged PHP version constraint in composer.json from ^7.3 || ^8.0 to >=7.3
composer.json from ^7.3 || ^8.0 to >=7.3This component is now supported on PHP 8
Parameter type for SebastianBergmann\Timer\Duration::fromMicroseconds() was changed from int to float
SebastianBergmann\Timer\Duration::fromMicroseconds() was changed from int to floatSebastianBergmann\Timer\Duration::fromNanoseconds() was changed from int to floatSebastianBergmann\Timer\Duration::asNanoseconds() was changed from int to floathrtime() returns float instead of int)Introduced Duration value object for encapsulating a duration with nanosecond granularity
Duration value object for encapsulating a duration with nanosecond granularityResourceUsageFormatter object for formatting resource usage with option to explicitly pass a duration (instead of looking at the unreliable $_SERVER['REQUEST_TIME_FLOAT'] variable)Timer are no longer staticTimer::stop() now returns a Duration value objectDuration and ResourceUsageFormatter has been removed from TimerTimer::timeSinceStartOfRequest() no longer tries $_SERVER['REQUEST_TIME'] when $_SERVER['REQUEST_TIME_FLOAT'] is not available ($_SERVER['REQUEST_TIME
Timer::timeSinceStartOfRequest() no longer tries $_SERVER['REQUEST_TIME'] when $_SERVER['REQUEST_TIME_FLOAT'] is not available ($_SERVER['REQUEST_TIME_FLOAT'] was added in PHP 5.4 and this library requires PHP 7.3)$_SERVER['REQUEST_TIME_FLOAT'] is not set or is not of type floatTimer::timeSinceStartOfRequest() now raises an exception if $_SERVER['REQUEST_TIME_FLOAT'] does not contain a float (or $_SERVER['REQUEST_TIME'] does
Timer::timeSinceStartOfRequest() now raises an exception if $_SERVER['REQUEST_TIME_FLOAT'] does not contain a float (or $_SERVER['REQUEST_TIME'] does not contain an int)Improved the fix for #30 and restored usage of hrtime()
hrtime()### Fixed * #30: Resolution of time returned by Timer::stop() is different than before (this reverts using hrtime() instead of microtime())
Timer::stop() is different than before (this reverts using hrtime() instead of microtime())Timer::secondsToShortTimeString() as alternative to Timer::secondsToTimeString()
Timer::secondsToShortTimeString() as alternative to Timer::secondsToTimeString()Timer::start() and Timer::stop() now use hrtime() (high resolution monotonic timer) instead of microtime()Timer::timeSinceStartOfRequest() now uses Timer::secondsToShortTimeString() for time formattingTimer::secondsToTimeString() resultThis component is no longer supported on PHP 7.1 and PHP 7.2
Nothing published for this version
Nothing published for this version
### Fixed * #21: Formatting of memory consumption does not work on 32bit systems
Improved formatting of memory consumption for resourceUsage()
resourceUsage()Improved formatting of memory consumption for resourceUsage()
resourceUsage()This component now uses namespaces
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →