3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace Hoa\Bench { class Mark { /** * Mark ID. * * @var \Hoa\Bench\Mark string */ protected $_id = null; /** * Start time. * * @var \Hoa\Bench\Mark float */ protected $start = 0.0; /** * Stop time. * * @var \Hoa\Bench\Mark float */ protected $stop = 0.0; /** * Addition of pause time. * * @var \Hoa\Bench\Mark float */ protected $pause = 0.0; /** * Whether the mark is running. * * @var \Hoa\Bench\Mark bool */ protected $_running = false; /** * Whether the mark is in pause. * * @var \Hoa\Bench\Mark bool */ protected $_pause = false; /** * Built a mark (and set the ID). * * @access public * @param string $id The mark ID. * @return void */ public function __construct ( $id ) { $this->setId($id); return; } /** * Set the mark ID. * * @access protected * @param string $id The mark ID. * @return string */ protected function setId ( $id ) { $old = $this->_id; $this->_id = $id; return $old; } /** * Get the mark ID. * * @access public * @return string */ public function getId ( ) { return $this->_id; } /** * Start the mark. * A mark can be started if it is in pause, stopped, or if it is the first start. * Else, an exception will be thrown. * * @access public * @return \Hoa\Bench\Mark * @throw \Hoa\Bench\Exception */ public function start ( ) { if(true === $this->isRunning()) if(false === $this->isPause()) throw new Exception( 'Cannot start the %s mark, because it is running.', 0, $this->getId()); if(true === $this->isPause()) $this->pause += microtime(true) - $this->stop; else { $this->reset(); $this->start = microtime(true); } $this->_running = true; $this->_pause = false; return $this; } /** * Stop the mark. * A mark can be stopped if it is in pause, or started. Else, an exception * will be thrown (or not, according to the $silent argument). * * @access public * @param bool $silent If set to true and if the mark is not running, * no exception will be thrown. * @return \Hoa\Bench\Mark * @throw \Hoa\Bench\Exception */ public function stop ( $silent = false ) { if(false === $this->isRunning()) if(false === $silent) throw new Exception( 'Cannot stop the %s mark, because it is not running.', 1, $this->getId()); else return $this; $this->stop = microtime(true); $this->_running = false; $this->_pause = false; return $this; } /** * Reset the mark. * * @access public * @return \Hoa\Bench\Mark */ public function reset ( ) { $this->start = 0.0. $this->stop = 0.0; $this->pause = 0.0; $this->_running = false; $this->_pause = false; return $this; } /** * Pause the mark. * A mark can be in pause if it is started. Else, an exception will be * thrown (or not, according to the $silent argument). * * @access public * @param bool $silent If set to true and the mark is not running, * no exception will be throw. Idem if the mark * is in pause. * @return \Hoa\Bench\Mark * @throw \Hoa\Bench\Exception */ public function pause ( $silent = false ) { if(false === $this->isRunning()) if(false === $silent) throw new Exception( 'Cannot stop the %s mark, because it is not running.', 2, $this->getId()); else return $this; if(true === $this->isPause()) if(false === $silent) throw new Exception( 'The %s mark is still in pause. Cannot pause it again.', 3, $this->getId()); else return $this; $this->stop = microtime(true); $this->_pause = true; return $this; } /** * Get the difference between $stop and $start. * If the mark is still running (it contains the pause case), the current * microtime will be used in stay of $stop. * * @access public * @return float */ public function diff ( ) { if(false === $this->isRunning() || true === $this->isPause()) return $this->stop - $this->start - $this->pause; return microtime(true) - $this->start - $this->pause; } /** * Compare to mark. * $a op $b : return -1 if $a < $b, 0 if $a == $b, and 1 if $a > $b. We * compare the difference between $start and $stop, i.e. we call the diff() * method. * * @access public * @param \Hoa\Bench\Mark $mark The mark to compare to. * @return int */ public function compareTo ( Mark $mark ) { $a = $this->diff(); $b = $mark->diff(); if($a < $b) return -1; elseif($a == $b) return 0; else return 1; } /** * Check if the mark is running. * * @access public * @return bool */ public function isRunning ( ) { return $this->_running; } /** * Check if the mark is in pause. * * @access public * @return bool */ public function isPause ( ) { return $this->_pause; } /** * Alias of the diff() method, but return a string, not a float. * * @access public * @return string */ public function __toString ( ) { return (string) $this->diff(); } } class Bench implements \Iterator, \Countable { /** * Statistic : get the result. * * @const int */ const STAT_RESULT = 0; /** * Statistic : get the pourcent. * * @const int */ const STAT_POURCENT = 1; /** * Collection of marks. * * @var \Hoa\Bench array */ protected static $_mark = array(); /** * Collection of filters. * * @var \Hoa\Bench array */ protected $_filters = array(); /** * Get a mark. * If the mark does not exist, it will be automatically create. * * @access public * @param string $id The mark ID. * @return \Hoa\Bench\Mark * @throw \Hoa\Bench\Exception */ public function __get ( $id ) { if(true === $this->markExists($id)) return self::$_mark[$id]; $mark = new Mark($id); self::$_mark[$id] = $mark; return $mark; } /** * Check if a mark exists. * Alias of the protected markExist method. * * @access public * @param string $id The mark ID. * @return bool */ public function __isset ( $id ) { return $this->markExists($id); } /** * Destroy a mark. * * @access public * @param string $id The mark ID. * @return void */ public function __unset ( $id ) { unset(self::$_mark[$id]); return; } /** * Destroy all mark. * * @access public * @return void */ public function unsetAll ( ) { self::$_mark = array(); return; } /** * Check if a mark already exists. * * @access protected * @param string $id The mark ID. * @return bool */ protected function markExists ( $id ) { return isset(self::$_mark[$id]); } /** * Get the current mark for the iterator. * * @access public * @return \Hoa\Bench\Mark */ public function current ( ) { return current(self::$_mark); } /** * Get the current mark ID for the iterator. * * @access public * @return string */ public function key ( ) { return key(self::$_mark); } /** * Advance the internal mark collection pointer, and return the current * mark. * * @access public * @return \Hoa\Bench\Mark */ public function next ( ) { return next(self::$_mark); } /** * Rewind the internal mark collection pointer, and return the first mark. * * @access public * @return \Hoa\Bench\Mark */ public function rewind ( ) { return reset(self::$_mark); } /** * Check if there is a current element after calls the rewind or the next * methods. * * @access public * @return bool */ public function valid ( ) { if(empty(self::$_mark)) return false; $key = key(self::$_mark); $return = (next(self::$_mark) ? true : false); prev(self::$_mark); if(false === $return) { end(self::$_mark); if($key === key(self::$_mark)) $return = true; } return $return; } /** * Add a filter. * Used in the self::getStatistic() method, no in iterator. * A filter is a callable that will receive 3 values about a mark: ID, time * result, and time pourcent. The callable must return a boolean. * * @access public * @param mixed $callable Callable. * @return void */ public function filter ( $callable ) { $this->_filters[] = xcallable($callable); return $this; } /** * Return all filters. * * @access public * @return array */ public function getFilters ( ) { return $this->_filters; } /** * Get statistic. * Return an associative array : id => sub-array. The sub-array contains the * result time in second (given by the constant self::STAT_RESULT), and the * result pourcent (given by the constant self::START_POURCENT). * * @access public * @param bool $considerFilters Whether we should consider filters or * not. * @return array */ public function getStatistic ( $considerFilters = true ) { if(empty(self::$_mark)) return array(); $max = $this->getLongest()->diff(); $out = array(); foreach($this as $id => $mark) { $result = $mark->diff(); $pourcent = ($result * 100) / $max; if(true === $considerFilters) foreach($this->getFilters() as $filter) if(true !== $filter($id, $result, $pourcent)) continue 2; $out[$id] = array( self::STAT_RESULT => $result, self::STAT_POURCENT => $pourcent ); } return $out; } /** * Get the maximum, i.e. the longest mark in time. * * @access public * @return \Hoa\Bench\Mark */ public function getLongest ( ) { $max = 0; $outMark = null; foreach($this as $id => $mark) if($mark->diff() > $max) { $outMark = $mark; $max = $mark->diff(); } return $outMark; } /** * Draw statistic in text mode. * * @access public * @param int $width The graphic width. * @return string * @throw \Hoa\Bench\Exception */ public function drawStatistic ( $width = 80 ) { if(empty(self::$_mark)) return ''; if($width < 1) throw new Exception( 'The graphic width must be positive, given %d.', 0, $width); $out = null; $stats = $this->getStatistic(); $margin = 0; foreach($stats as $id => $foo) strlen($id) > $margin and $margin = strlen($id); $width = $width - $margin - 18; $format = '%-' . $margin . 's %-' . $width . 's %5dms, %5.1f%%' . "\n"; foreach($stats as $id => $stat) $out .= sprintf( $format, $id, str_repeat( '|', round(($stat[self::STAT_POURCENT] * $width) / 100) ), round(1000 * $stat[self::STAT_RESULT]), round($stat[self::STAT_POURCENT], 3) ); return $out; } /** * Count the number of mark. * * @access public * @return int */ public function count ( ) { return count(self::$_mark); } /** * Alias of drawStatistic() method. * * @access public * @return string */ public function __toString ( ) { return $this->drawStatistic(); } } } namespace { mb_internal_encoding('UTF-8'); mb_regex_encoding('UTF-8'); $bench = new Hoa\Bench\Bench(); $memory = array(); $string = str_repeat('foo', 10000); $_string = $string; $memory['substr'] = memory_get_usage(); $bench->substr->start(); while(0 < strlen($_string)) { preg_match('#^(?:foo)#u', $_string, $matches); $_string = mb_substr($_string, mb_strlen($matches[0])); } $bench->substr->stop(); $memory['substr'] = memory_get_usage() - $memory['substr']; unset($matches); unset($_string); $_string = $string; $offset = 0; $maxoffset = strlen($_string); $memory['offset'] = memory_get_usage(); $bench->offset->start(); while($offset < $maxoffset) { preg_match('#(?:foo)#u', $_string, $matches, PREG_OFFSET_CAPTURE, $offset); $offset += mb_strlen($matches[0][0]); } $bench->offset->stop(); $memory['offset'] = memory_get_usage() - $memory['offset']; echo $bench; print_r($memory); }
Output for 7.3.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 113ms, 100.0% offset |||||||||||||||||||||||||||||||||||||||||||||||| 97ms, 86.1% Array ( [substr] => 1376 [offset] => 968 )
Output for 7.3.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 115ms, 100.0% offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 112ms, 97.2% Array ( [substr] => 1376 [offset] => 968 )
Output for 7.2.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0% offset |||||||||||||| 167ms, 25.3% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 664ms, 100.0% offset |||||||||||||| 170ms, 25.6% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset |||||||||||||| 162ms, 24.4% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 644ms, 100.0% offset |||||||||||||| 161ms, 25.1% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset |||||||||||||| 162ms, 24.5% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 655ms, 100.0% offset ||||||||||||||||| 197ms, 30.1% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 644ms, 100.0% offset |||||||||||||| 167ms, 25.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 646ms, 100.0% offset ||||||||||||||| 174ms, 26.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 650ms, 100.0% offset |||||||||||||| 163ms, 25.0% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 644ms, 100.0% offset |||||||||||||| 163ms, 25.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset |||||||||||||| 163ms, 24.6% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 643ms, 100.0% offset |||||||||||||| 160ms, 24.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 688ms, 100.0% offset |||||||||||||| 178ms, 25.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.2.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset |||||||||||||| 163ms, 24.7% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset |||||||||||||| 164ms, 24.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 652ms, 100.0% offset ||||||||||||||| 180ms, 27.5% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 689ms, 100.0% offset |||||||||||||| 167ms, 24.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset ||||||||||||||| 178ms, 26.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 704ms, 100.0% offset ||||||||||||| 168ms, 23.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset |||||||||||||| 169ms, 24.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0% offset ||||||||||||||| 185ms, 26.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0% offset |||||||||||||||||| 219ms, 31.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 714ms, 100.0% offset ||||||||||||||| 187ms, 26.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0% offset |||||||||||||||| 194ms, 28.7% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset ||||||||||||||||| 207ms, 29.9% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 719ms, 100.0% offset |||||||||||||||| 211ms, 29.3% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 707ms, 100.0% offset |||||||||||||| 178ms, 25.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 731ms, 100.0% offset ||||||||||||||| 195ms, 26.7% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 706ms, 100.0% offset |||||||||||||| 174ms, 24.7% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 689ms, 100.0% offset ||||||||||||||| 187ms, 27.1% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset ||||||||||||||| 183ms, 26.3% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset |||||||||||||| 173ms, 25.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 657ms, 100.0% offset ||||||||||||||| 179ms, 27.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 680ms, 100.0% offset |||||||||||||| 171ms, 25.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 659ms, 100.0% offset |||||||||||||| 170ms, 25.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 704ms, 100.0% offset |||||||||||||| 177ms, 25.2% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 725ms, 100.0% offset |||||||||||||| 187ms, 25.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 702ms, 100.0% offset ||||||||||||| 164ms, 23.4% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 664ms, 100.0% offset |||||||||||||| 166ms, 25.0% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.1.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 699ms, 100.0% offset |||||||||||||||| 194ms, 27.8% Array ( [substr] => 1320 [offset] => 968 )
Output for 7.0.33
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset |||||||||||||||| 187ms, 28.2% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.32
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 684ms, 100.0% offset |||||||||||||||| 198ms, 28.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.31
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 656ms, 100.0% offset |||||||||||||| 168ms, 25.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.30
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 674ms, 100.0% offset ||||||||||||||| 185ms, 27.4% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.29
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 738ms, 100.0% offset ||||||||||||| 177ms, 23.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.28
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 726ms, 100.0% offset |||||||||||||||| 212ms, 29.2% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.27
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 722ms, 100.0% offset ||||||||||||||| 197ms, 27.3% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.26
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 714ms, 100.0% offset ||||||||||||||| 196ms, 27.4% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 711ms, 100.0% offset |||||||||||||||| 199ms, 28.0% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset ||||||||||||||| 182ms, 26.3% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 665ms, 100.0% offset ||||||||||||||| 179ms, 26.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset |||||||||||||| 169ms, 25.3% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 706ms, 100.0% offset ||||||||||||||| 191ms, 27.1% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 678ms, 100.0% offset |||||||||||||| 168ms, 24.7% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 690ms, 100.0% offset ||||||||||||||| 179ms, 25.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset |||||||||||||| 171ms, 25.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0% offset ||||||||||||||| 183ms, 26.7% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 651ms, 100.0% offset ||||||||||||||| 175ms, 26.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 686ms, 100.0% offset ||||||||||||||| 179ms, 26.1% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 675ms, 100.0% offset ||||||||||||||| 180ms, 26.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 676ms, 100.0% offset ||||||||||||||| 181ms, 26.8% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset |||||||||||||| 173ms, 25.8% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 655ms, 100.0% offset |||||||||||||||| 189ms, 28.9% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 700ms, 100.0% offset |||||||||||||| 169ms, 24.1% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 665ms, 100.0% offset ||||||||||||||| 180ms, 27.1% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 682ms, 100.0% offset ||||||||||||||||| 203ms, 29.8% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset |||||||||||||| 170ms, 25.7% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 689ms, 100.0% offset |||||||||||||| 170ms, 24.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset |||||||||||||| 165ms, 24.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset |||||||||||||| 164ms, 24.7% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 661ms, 100.0% offset |||||||||||||| 169ms, 25.6% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0% offset |||||||||||||||| 186ms, 28.2% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 651ms, 100.0% offset |||||||||||||| 165ms, 25.4% Array ( [substr] => 1648 [offset] => 976 )
Output for 7.0.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset ||||||||||||||| 179ms, 26.4% Array ( [substr] => 1648 [offset] => 976 )
Output for 5.6.38
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 681ms, 100.0% offset ||||||||||||||| 178ms, 26.1% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.37
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset ||||||||||||||| 180ms, 27.2% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.36
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 690ms, 100.0% offset ||||||||||||||| 189ms, 27.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.35
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 735ms, 100.0% offset ||||||||||||||||||| 249ms, 33.9% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.34
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 720ms, 100.0% offset ||||||||||||||||| 214ms, 29.7% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.33
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 715ms, 100.0% offset ||||||||||||||||||| 247ms, 34.6% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.32
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 708ms, 100.0% offset ||||||||||||||| 188ms, 26.6% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.31
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 674ms, 100.0% offset ||||||||||||||| 176ms, 26.1% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.30
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset ||||||||||||||| 191ms, 27.5% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.29
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 675ms, 100.0% offset ||||||||||||||| 181ms, 26.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.28
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset ||||||||||||||| 183ms, 27.2% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.27
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 661ms, 100.0% offset ||||||||||||||||| 200ms, 30.2% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.26
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 701ms, 100.0% offset ||||||||||||||| 186ms, 26.5% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 651ms, 100.0% offset ||||||||||||||| 173ms, 26.6% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 703ms, 100.0% offset ||||||||||||||| 191ms, 27.2% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 646ms, 100.0% offset ||||||||||||||| 170ms, 26.3% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset ||||||||||||||| 181ms, 27.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 680ms, 100.0% offset |||||||||||||| 175ms, 25.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 644ms, 100.0% offset ||||||||||||||| 172ms, 26.7% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 655ms, 100.0% offset |||||||||||||||| 182ms, 27.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 694ms, 100.0% offset ||||||||||||||| 190ms, 27.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 648ms, 100.0% offset ||||||||||||||| 171ms, 26.5% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 647ms, 100.0% offset |||||||||||||||| 190ms, 29.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 653ms, 100.0% offset ||||||||||||||| 171ms, 26.2% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 690ms, 100.0% offset ||||||||||||||| 180ms, 26.1% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset |||||||||||||||||| 213ms, 31.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 659ms, 100.0% offset |||||||||||||| 170ms, 25.7% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 688ms, 100.0% offset |||||||||||||| 172ms, 24.9% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 705ms, 100.0% offset |||||||||||||| 179ms, 25.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset |||||||||||||| 169ms, 25.5% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset |||||||||||||| 175ms, 25.1% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 664ms, 100.0% offset |||||||||||||| 170ms, 25.6% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 657ms, 100.0% offset ||||||||||||||| 171ms, 26.0% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 661ms, 100.0% offset ||||||||||||||| 177ms, 26.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 648ms, 100.0% offset ||||||||||||||| 172ms, 26.5% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset |||||||||||||||| 193ms, 27.8% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 666ms, 100.0% offset |||||||||||||||| 193ms, 29.0% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset |||||||||||||| 170ms, 25.4% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.6.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset |||||||||||||| 172ms, 25.6% Array ( [substr] => 2448 [offset] => 1704 )
Output for 5.5.38
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 650ms, 100.0% offset ||||||||||||||| 173ms, 26.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.37
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 685ms, 100.0% offset |||||||||||||| 173ms, 25.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.36
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset ||||||||||||||| 180ms, 26.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.35
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 672ms, 100.0% offset |||||||||||||| 173ms, 25.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.34
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset |||||||||||||||| 194ms, 28.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.33
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0% offset ||||||||||||||| 188ms, 27.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.32
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset |||||||||||||| 171ms, 25.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.31
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 683ms, 100.0% offset ||||||||||||||| 189ms, 27.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.30
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 675ms, 100.0% offset ||||||||||||||| 180ms, 26.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.29
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 666ms, 100.0% offset |||||||||||||||| 184ms, 27.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.28
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0% offset ||||||||||||||| 181ms, 27.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.27
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset ||||||||||||||| 176ms, 26.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.26
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset ||||||||||||||| 175ms, 26.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 694ms, 100.0% offset |||||||||||||||| 194ms, 28.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 678ms, 100.0% offset |||||||||||||||| 188ms, 27.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 685ms, 100.0% offset ||||||||||||||| 186ms, 27.1% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0% offset |||||||||||||||| 191ms, 28.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 681ms, 100.0% offset |||||||||||||| 172ms, 25.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 647ms, 100.0% offset ||||||||||||||| 170ms, 26.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset ||||||||||||||| 183ms, 27.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset ||||||||||||||||| 197ms, 29.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 669ms, 100.0% offset |||||||||||||| 172ms, 25.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset |||||||||||||| 170ms, 25.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 656ms, 100.0% offset ||||||||||||||| 173ms, 26.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 712ms, 100.0% offset ||||||||||||||| 192ms, 27.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset |||||||||||||| 173ms, 25.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset ||||||||||||||| 191ms, 27.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 686ms, 100.0% offset |||||||||||||||| 192ms, 27.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 688ms, 100.0% offset |||||||||||||||| 198ms, 28.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset ||||||||||||||| 177ms, 26.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0% offset |||||||||||||| 171ms, 25.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 672ms, 100.0% offset ||||||||||||||| 176ms, 26.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 669ms, 100.0% offset |||||||||||||| 171ms, 25.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0% offset ||||||||||||||||| 198ms, 30.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset |||||||||||||| 177ms, 25.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 693ms, 100.0% offset |||||||||||||||||| 219ms, 31.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset ||||||||||||||||| 207ms, 31.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 648ms, 100.0% offset ||||||||||||||| 174ms, 26.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.5.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 641ms, 100.0% offset ||||||||||||||| 170ms, 26.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.45
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 685ms, 100.0% offset ||||||||||||||| 185ms, 27.1% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.44
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset ||||||||||||||| 178ms, 26.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.43
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset ||||||||||||||| 179ms, 26.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.42
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset ||||||||||||||| 176ms, 26.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.41
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset |||||||||||||| 176ms, 25.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.40
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 689ms, 100.0% offset |||||||||||||| 170ms, 24.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.39
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 685ms, 100.0% offset |||||||||||||| 173ms, 25.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.38
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 680ms, 100.0% offset ||||||||||||||| 177ms, 26.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.37
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0% offset |||||||||||||| 169ms, 25.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.36
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 655ms, 100.0% offset ||||||||||||||||| 193ms, 29.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.35
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 678ms, 100.0% offset |||||||||||||||| 192ms, 28.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.34
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 707ms, 100.0% offset ||||||||||||||| 196ms, 27.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.33
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 668ms, 100.0% offset |||||||||||||| 171ms, 25.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.32
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 659ms, 100.0% offset ||||||||||||||| 172ms, 26.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.31
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset |||||||||||||||||| 222ms, 31.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.30
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 707ms, 100.0% offset |||||||||||||| 177ms, 25.1% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.29
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 679ms, 100.0% offset |||||||||||||||| 195ms, 28.7% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.28
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0% offset |||||||||||||| 172ms, 25.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.27
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset ||||||||||||||| 172ms, 26.0% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.26
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 688ms, 100.0% offset |||||||||||||| 175ms, 25.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 678ms, 100.0% offset |||||||||||||| 173ms, 25.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 714ms, 100.0% offset ||||||||||||||| 196ms, 27.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 675ms, 100.0% offset ||||||||||||||| 181ms, 26.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 707ms, 100.0% offset ||||||||||||||| 193ms, 27.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 703ms, 100.0% offset |||||||||||||||| 199ms, 28.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 689ms, 100.0% offset ||||||||||||||| 185ms, 26.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0% offset |||||||||||||||| 183ms, 27.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 684ms, 100.0% offset |||||||||||||| 169ms, 24.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0% offset ||||||||||||||||| 198ms, 29.9% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 665ms, 100.0% offset ||||||||||||||| 174ms, 26.2% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 646ms, 100.0% offset ||||||||||||||| 170ms, 26.3% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0% offset |||||||||||||| 169ms, 25.4% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 707ms, 100.0% offset |||||||||||||||||||| 251ms, 35.5% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 694ms, 100.0% offset |||||||||||||||||||| 254ms, 36.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 692ms, 100.0% offset ||||||||||||||||||||| 254ms, 36.8% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 772ms, 100.0% offset ||||||||||||||||||| 259ms, 33.6% Array ( [substr] => 2464 [offset] => 1704 )
Output for 5.4.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 773ms, 100.0% offset ||||||||||||||||||| 261ms, 33.7% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0% offset ||||||||||||||||| 214ms, 30.8% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 670ms, 100.0% offset ||||||||||||||||| 199ms, 29.7% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 680ms, 100.0% offset |||||||||||||||| 198ms, 29.1% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 692ms, 100.0% offset |||||||||||||||| 204ms, 29.4% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 703ms, 100.0% offset |||||||||||||||| 195ms, 27.8% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 725ms, 100.0% offset |||||||||||||||| 211ms, 29.0% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 684ms, 100.0% offset ||||||||||||||||| 211ms, 30.8% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 711ms, 100.0% offset ||||||||||||||||| 213ms, 29.9% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.4.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 732ms, 100.0% offset ||||||||||||||||| 221ms, 30.1% Array ( [substr] => 2472 [offset] => 1704 )
Output for 5.3.29
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 651ms, 100.0% offset |||||||||||||||| 181ms, 27.8% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.28
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 703ms, 100.0% offset |||||||||||||||||| 228ms, 32.4% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.27
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 690ms, 100.0% offset |||||||||||||| 175ms, 25.4% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.26
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 669ms, 100.0% offset |||||||||||||| 170ms, 25.4% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.25
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0% offset |||||||||||||| 175ms, 25.8% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.24
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset |||||||||||||| 172ms, 25.9% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.23
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 697ms, 100.0% offset |||||||||||||||||| 223ms, 32.0% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.22
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0% offset ||||||||||||||||| 200ms, 30.1% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.21
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 684ms, 100.0% offset |||||||||||||||| 200ms, 29.2% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.20
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0% offset |||||||||||||||| 196ms, 29.0% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.19
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 706ms, 100.0% offset |||||||||||||||| 203ms, 28.7% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.18
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 728ms, 100.0% offset ||||||||||||||| 200ms, 27.5% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.17
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0% offset |||||||||||||||| 195ms, 28.3% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.16
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 732ms, 100.0% offset ||||||||||||||| 199ms, 27.2% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.15
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 731ms, 100.0% offset |||||||||||||||| 214ms, 29.2% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.14
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 717ms, 100.0% offset ||||||||||||||| 198ms, 27.5% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.13
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 688ms, 100.0% offset |||||||||||||||| 197ms, 28.6% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.12
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 736ms, 100.0% offset |||||||||||||||| 206ms, 27.9% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.11
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 778ms, 100.0% offset ||||||||||||||| 205ms, 26.3% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.10
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 818ms, 100.0% offset |||||||||||||| 205ms, 25.0% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.9
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 791ms, 100.0% offset ||||||||||||||| 215ms, 27.2% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.8
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 756ms, 100.0% offset |||||||||||||||| 217ms, 28.8% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.7
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 748ms, 100.0% offset ||||||||||||||||| 224ms, 29.9% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.6
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 737ms, 100.0% offset ||||||||||||||||| 218ms, 29.6% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.5
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 782ms, 100.0% offset |||||||||||||||| 221ms, 28.3% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.4
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 743ms, 100.0% offset |||||||||||||||| 218ms, 29.3% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.3
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 768ms, 100.0% offset ||||||||||||||| 203ms, 26.5% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.2
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 764ms, 100.0% offset ||||||||||||||||| 230ms, 30.1% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.1
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 759ms, 100.0% offset ||||||||||||||| 202ms, 26.6% Array ( [substr] => 2264 [offset] => 2456 )
Output for 5.3.0
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 757ms, 100.0% offset ||||||||||||||| 205ms, 27.1% Array ( [substr] => 2264 [offset] => 2456 )

preferences:
198.7 ms | 402 KiB | 235 Q