Ускорение кода PHP. Преобразование типа переменной к Integer

30.10.2009 17:44 / Сергей Дяговченко / 710 просмотров

Как оказалось, скорость преобразования переменной к типу integer с помощью конструкции (int)$value приблизительно в 4 раза быстрее чем с использованием функции intval($value)

<?php
$v = '2132';
$int = 1;

$s = microtime(TRUE);
for($i=0; $i<1000; $i++) {
    $int = intval($v);
}
$time_1 = (microtime(TRUE)-$s);

$s = microtime(TRUE);
for($i=0; $i<1000; $i++) {
    $int = (int)$v;
}
$time_2 = (microtime(TRUE)-$s);
$time_faster_value = $time_1 / $time_2;

echo <<<START
intval(\$v):<br /><var>$time_1</var><br />
(int)\$v:<br /><var>$time_2</var><br />
faster:<br /><var>$time_faster_value</var>
START;
?>

Результат выполнения:

intval($v):
0.00362610816956
(int)$v:
0.000854015350342
faster:
4.24595198213