Без заголовка

Провёл небольшие замеры в PHP. Задача следующая - заменить вхождения между двумя ограничителями (в моём случае - фигурные скобки) по хешу, где ключём хеша является значение, которое заменяем, значением хеша - то, на что заменяем. Сделал несколько реализаций, с использованием различный функций (слева функция, справа - время в секундах замены из одного и того же словаря на приличного размера тексте):

strpos - 0.23691987991333
explode - 0.27920699119568
preg_replace_callback - 0.34914493560791
str_replace - 1.8960340023041
strtr - 3.1935269832611

Во многом результаты довольно ожидаемые, но кое-что удивило - скорость замены через str_replace и strtr сильно различается, а explode (разбиение по первому ограничителю, потом, что осталось - по второму) почему-то оказался почти таким же быстрым, как и strpos (поиск первого ограничителя, потом второго).
14 октября 2006 19:00

Ваше имя или адрес блога (можно OpenID):

Текст вашего комментария, не HTML: