PHP: Porovnání rychlosti str_replace() a preg_replace()

by Zdeněk Večeřa 1 Comment

Podívejme se na porovnání rychlosti funkcí str_replace() a preg_replace(), které lze použít pro nahrazení řetězce řetězcem.

$url = 'http://google.com/1/../2/././';

for ($i = 0; $i < 1000000 ; $i++){
str_replace('/./', '/', $url);
}
// Doba běhu: 1.6402 s

for ($i = 0; $i < 1000000 ; $i++){
preg_replace('/(\/\.\/)/', '/', $url);
}
// Doba běhu: 5.0405 s

Pokud chcete jen nahradit řetězec a nepotřebujete využít síly regulárních výrazů, využijte funkci str_replace(). Dle měření zpracování bude až 3× rychlejší než v případě preg_replace().



Comment ( 1 )

  1. Tomáš Kraina
    K tomuhle tematu doporucuju precist clanky a diskuzi u Dundeeho: http://blog.milde.cz/post/243-pozor-na-trim/ a http://blog.milde.cz/post/244-srovnani-nahrazovacich-funkci/

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>