@ 2013-07-16T09:33:59Z <?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 {
$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;
$memory['offset'] = memory_get_usage();
$bench->offset->start();
while($offset < strlen($_string)) {
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);
}
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 7.4.0 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 203ms, 100.0%
offset | 4ms, 2.1%
Array
(
[substr] => 1736
[offset] => 1008
)
Output for 7.3.12 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 132ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||| 114ms, 86.2%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.11 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 204ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 184ms, 90.1%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.10 substr |||||||||||||||||||||||||||||||||||||||||||||| 114ms, 82.3%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 138ms, 100.0%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.9 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 123ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 112ms, 91.1%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.8 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 107ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||| 93ms, 86.1%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.7 substr |||||||||||||||||||||||||||||||||||||| 122ms, 67.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 180ms, 100.0%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 107ms, 93.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 115ms, 100.0%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 197ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||| 181ms, 92.2%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.4 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 183ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||| 144ms, 78.8%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.3 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 197ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 181ms, 91.9%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.2 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 150ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||| 111ms, 73.9%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.1 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 197ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||| 161ms, 81.7%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.3.0 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 124ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||| 94ms, 76.1%
Array
(
[substr] => 1376
[offset] => 968
)
Output for 7.2.25 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 720ms, 100.0%
offset ||||||||||||| 172ms, 23.8%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.24 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 715ms, 100.0%
offset ||||||||||||| 161ms, 22.5%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.23 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 799ms, 100.0%
offset |||||||||||| 166ms, 20.8%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.22 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 694ms, 100.0%
offset ||||||||||||| 162ms, 23.4%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.21 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 704ms, 100.0%
offset ||||||||||||||| 184ms, 26.2%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.20 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0%
offset |||||||||||||||||| 213ms, 32.2%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.19 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0%
offset ||||||||||||||| 178ms, 26.2%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.18 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 790ms, 100.0%
offset |||||||||||||||||||||| 316ms, 40.0%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.2.17 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 712ms, 100.0%
offset |||||||||||||| 177ms, 24.8%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.33 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 743ms, 100.0%
offset |||||||||||||||| 216ms, 29.1%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.32 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 686ms, 100.0%
offset ||||||||||||||| 183ms, 26.7%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.31 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 700ms, 100.0%
offset ||||||||||||||||||||||||||| 342ms, 48.8%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.30 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 808ms, 100.0%
offset ||||||||||||||||||||||| 331ms, 41.0%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.29 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 686ms, 100.0%
offset |||||||||||||||||||| 249ms, 36.3%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.28 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 710ms, 100.0%
offset ||||||||||||| 162ms, 22.8%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.27 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 652ms, 100.0%
offset |||||||||||||| 164ms, 25.1%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.26 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 636ms, 100.0%
offset |||||||||||||| 155ms, 24.4%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.7 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 931ms, 100.0%
offset |||||||||||| 207ms, 22.2%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 936ms, 100.0%
offset ||||||||||| 181ms, 19.3%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 719ms, 100.0%
offset ||||||||||||| 163ms, 22.6%
Array
(
[substr] => 1320
[offset] => 968
)
Output for 7.1.0 Fatal error: Method Hoa\Bench\Bench::__toString() must not throw an exception, caught Error: Call to a member function diff() on null in /in/rvjgc on line 0
Process exited with code 255 . Output for 7.0.20 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 937ms, 100.0%
offset ||||||||||| 191ms, 20.4%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.14 Warning: str_repeat(): Second argument has to be greater than or equal to 0 in /in/rvjgc on line 572
substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 130ms, 100.0%
offset -184ms, -141.8%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.10 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 744ms, 100.0%
offset |||||||||||| 163ms, 22.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.9 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 608ms, 100.0%
offset |||||||||||| 135ms, 22.1%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.8 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 664ms, 100.0%
offset |||||||||||| 148ms, 22.2%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.7 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 672ms, 100.0%
offset |||||||||||||| 163ms, 24.2%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 696ms, 100.0%
offset ||||||||||||| 164ms, 23.6%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0%
offset ||||||||||||| 149ms, 22.5%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.4 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0%
offset ||||||||||||| 162ms, 24.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.3 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 659ms, 100.0%
offset ||||||||||||| 158ms, 24.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.2 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 680ms, 100.0%
offset ||||||||||||| 163ms, 24.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.1 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 682ms, 100.0%
offset ||||||||||||| 163ms, 24.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 7.0.0 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 674ms, 100.0%
offset ||||||||||||| 162ms, 24.0%
Array
(
[substr] => 1648
[offset] => 976
)
Output for 5.6.28 Fatal error: Call to a member function diff() on null in /in/rvjgc on line 497
Process exited with code 255 . Output for 5.6.25 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0%
offset |||||||||||||| 160ms, 24.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.24 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 675ms, 100.0%
offset |||||||||||||| 169ms, 25.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.23 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0%
offset |||||||||||||| 168ms, 25.1%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.22 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 687ms, 100.0%
offset |||||||||||||| 168ms, 24.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.21 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 538ms, 100.0%
offset |||||||||||||| 139ms, 25.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.20 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 671ms, 100.0%
offset |||||||||||||| 169ms, 25.1%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.19 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 557ms, 100.0%
offset |||||||||||||||| 157ms, 28.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.18 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 607ms, 100.0%
offset ||||||||||||| 139ms, 22.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.17 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 566ms, 100.0%
offset |||||||||||||| 139ms, 24.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.16 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 681ms, 100.0%
offset |||||||||||||| 169ms, 24.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.15 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 676ms, 100.0%
offset |||||||||||||| 164ms, 24.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.14 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 662ms, 100.0%
offset |||||||||||||| 162ms, 24.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.13 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 658ms, 100.0%
offset ||||||||||||| 158ms, 24.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.12 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 663ms, 100.0%
offset |||||||||||| 143ms, 21.6%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.11 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 677ms, 100.0%
offset |||||||||||||| 168ms, 24.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.10 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 594ms, 100.0%
offset |||||||||||||||| 166ms, 27.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.9 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 661ms, 100.0%
offset ||||||||||||| 150ms, 22.6%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.8 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 569ms, 100.0%
offset |||||||||||||| 139ms, 24.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.7 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 685ms, 100.0%
offset |||||||||||||| 168ms, 24.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 705ms, 100.0%
offset |||||||||||||| 176ms, 24.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 626ms, 100.0%
offset |||||||||||| 139ms, 22.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.4 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 660ms, 100.0%
offset |||||||||||||| 160ms, 24.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.3 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 715ms, 100.0%
offset |||||||||||||| 184ms, 25.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.2 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 678ms, 100.0%
offset |||||||||||||| 164ms, 24.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.1 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 712ms, 100.0%
offset ||||||||||||| 168ms, 23.6%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.6.0 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 667ms, 100.0%
offset |||||||||||||| 165ms, 24.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.38 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 99.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.37 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 148ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||| 139ms, 94.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.36 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 179ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 173ms, 96.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.35 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 94.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 180ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.34 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 161ms, 93.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 172ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.33 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 185ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 91.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.32 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 163ms, 96.2%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.31 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 187ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 90.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.30 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 175ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 97.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.29 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 163ms, 95.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.28 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 165ms, 90.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 182ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.27 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 174ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 97.6%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.26 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 99.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.25 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 99.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.24 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 160ms, 95.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.23 substr |||||||||||||||||||||||||||||||||||||||||||||||||| 143ms, 88.9%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 161ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.22 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 180ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 93.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.21 substr ||||||||||||||||||||||||||||||||||||||||||||||||| 142ms, 87.9%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 162ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.20 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 99.1%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.19 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 175ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 96.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.18 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 177ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 95.6%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.16 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 154ms, 90.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.15 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 198ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 85.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.14 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 185ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 91.2%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.13 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 197ms, 99.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.12 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 163ms, 96.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.11 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 190ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 88.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.10 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 239ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||| 169ms, 70.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.9 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 177ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 95.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.8 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 222ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||| 170ms, 76.7%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.7 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 181ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 178ms, 98.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 180ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 94.7%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 183ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 92.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.4 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 172ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 98.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.3 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 93.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 213ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.2 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 157ms, 92.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.1 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 189ms, 90.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 208ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.5.0 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 186ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 90.7%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.45 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 176ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 96.5%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.44 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.43 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 186ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 90.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.42 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 186ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 179ms, 96.7%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.41 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 95.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 179ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.40 substr |||||||||||||||||||||||||||||||||||||||||||||||||| 152ms, 88.9%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.39 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 155ms, 92.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.38 substr |||||||||||||||||||||||||||||||||||||||||||||| 167ms, 82.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 203ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.37 substr ||||||||||||||||||||||||||||||||||||||||||| 165ms, 77.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 213ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.36 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 185ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 90.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.35 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 99.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.34 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 99.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.32 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 198ms, 92.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 214ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.31 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 172ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 98.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.30 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 174ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 98.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.29 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 87.8%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.28 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 196ms, 93.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 210ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.27 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 163ms, 96.2%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.26 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 176ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 96.3%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.25 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 164ms, 97.3%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.24 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 99.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.23 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 195ms, 91.3%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 214ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.22 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 87.7%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.21 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 187ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 89.9%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.20 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 178ms, 99.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 179ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.19 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 164ms, 96.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.18 substr |||||||||||||||||||||||||||||||||||||||||||||||||| 190ms, 89.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 214ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.17 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 99.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.16 substr |||||||||||||||||||||||||||||||||||||||||||||||||| 151ms, 89.5%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 168ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.15 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 160ms, 95.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.14 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 161ms, 94.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.13 substr |||||||||||||||||||||||||||||||||||||||||||||| 230ms, 81.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 283ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.12 substr ||||||||||||||||||||||||||||||||||||||||||| 220ms, 77.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 285ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.11 substr |||||||||||||||||||||||||||||||||||||||||||| 221ms, 78.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 283ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.10 substr |||||||||||||||||||||||||||||||||||||||||||||| 234ms, 82.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 283ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.9 substr ||||||||||||||||||||||||||||||||||||||||||||| 225ms, 79.5%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 283ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.8 substr ||||||||||||||||||||||||||||||||||||||||||||||| 188ms, 84.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 222ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.7 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 209ms, 94.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 222ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 223ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 222ms, 99.4%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 217ms, 97.2%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 223ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.4 substr ||||||||||||||||||||||||||||||||||||||||||||||| 189ms, 84.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 225ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.3 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 195ms, 90.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 215ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.2 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 198ms, 91.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 217ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.1 substr ||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 91.6%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 217ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.4.0 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 206ms, 94.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 217ms, 100.0%
Array
(
[substr] => 2448
[offset] => 1704
)
Output for 5.3.29 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||| 163ms, 95.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 170ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.28 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 207ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||| 169ms, 81.6%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.27 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 206ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||| 170ms, 82.4%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.26 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 190ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 89.2%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.25 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 191ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||| 171ms, 89.4%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.24 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 197ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||| 169ms, 85.6%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.23 substr ||||||||||||||||||||||||||||||||||||||||||||||||| 230ms, 87.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 264ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.22 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 96.9%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.21 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 201ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 193ms, 96.1%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.20 substr ||||||||||||||||||||||||||||||||||||||||||||||| 201ms, 84.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 239ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.19 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 178ms, 93.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.18 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 195ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 98.4%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.17 substr |||||||||||||||||||||||||||||||||||||||||||||||| 203ms, 86.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 236ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.16 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 203ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 94.3%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.15 substr ||||||||||||||||||||||||||||||||||||||||||||||| 172ms, 83.3%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 207ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.14 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 200ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 96.1%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.13 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 191ms, 99.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.12 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 207ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 92.5%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.11 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 223ms, 95.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 234ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.10 substr |||||||||||||||||||||||||||||||||||||||||||||||| 165ms, 85.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.9 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||| 183ms, 95.1%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.8 substr |||||||||||||||||||||||||||||||||||||||||||||||||||| 178ms, 92.7%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 193ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.7 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 194ms, 100.0%
offset ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 98.9%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.6 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 96.3%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.5 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 208ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 92.5%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.4 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 193ms, 99.8%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 193ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.3 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 190ms, 98.4%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 193ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.2 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 199ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 96.4%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.1 substr |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 200ms, 100.0%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 95.7%
Array
(
[substr] => 2264
[offset] => 2456
)
Output for 5.3.0 substr ||||||||||||||||||||||||||||||||||||||||||||||||||||||| 192ms, 98.5%
offset |||||||||||||||||||||||||||||||||||||||||||||||||||||||| 195ms, 100.0%
Array
(
[substr] => 2264
[offset] => 2456
)
preferences:dark mode live preview
155.83 ms | 401 KiB | 193 Q