Андрейка
Senior pomidor developer
WP
мы предполагаем, что очень простая операция копирования при некотором размере превзойдет по времени оверхед от регулярки
мы предполагаем, что очень простая операция копирования при некотором размере превзойдет по времени оверхед от регулярки
PHP:
<?php
class Timer
{
var $time_start;
function time()
{
return array_sum(explode(' ',microtime()));
}
function start()
{
$this->time_start = $this->time();
}
function stop()
{
return $this->time() - $this->time_start;
}
}
function rnd_string( $length )
{
$str = '';
for( $i = 0; $i < $length; $i++ ) {
$str .= chr(ord('a')+mt_rand(0,25));
}
return $str;
}
$search = rnd_string(2) ;
$text = rnd_string(100000) ;
$timer = & new Timer();
$timer->start();
for ( $i = 0; $i < 1000; $i++ ) {
strstr($text,$search);
}
print "strstr: ".$timer->stop()."\n";
$timer->start();
for ( $i = 0; $i < 1000; $i++ ) {
preg_match('{'.$search.'}',$text);
}
print "preg_match: ".$timer->stop()."\n";
?>