#php #производительность #интерпретатор
Несколько вопросов к людям, хорошо понимающим работу интерпретатора PHP.
Сказывается ли на скорости выполнения скрипта количество открывающих дескрипторов?
Т.е. в файле смесь из HTML разметки и PHP кода, при этом скажется ли существенно на
производительности, если мы будем открывать и закрывать на каждой строке?
Этот:
0 ) {
echo 'yes';
}
else {
echo 'no';
}
?>
или
0 ) { ?>
Есть ли разница, по скорости выполнения интерпретатором, классического синтаксиса
и альтернативного?
Т.е. между таким:
0 ) {
echo 'yes';
}
else {
echo 'no';
}
?>
и таким:
0 ):
echo 'yes';
else:
echo 'no';
endif;
?>
вариантами.
Какой из вариантов вывода переменной и результатов функции использует меньше ресурсов,
если вообще есть разница?
Этот:
или этот:
Ответы
Ответ 1
0) { echo $e; } else echo $e; } echo '
'.(microtime(1)-$st); $st = microtime(1); for ($i = 0; $i < 1000000; $i++) { ?> 0) { ?> '.(microtime(1)-$st); echo '
'; $st = microtime(1); for ($i = 0; $i < 1000000; $i++) { ?> 0) { ?> '.(microtime(1)-$st); $st = microtime(1); for ($i = 0; $i < 1000000; $i++) { ?> 0) { ?> '.(microtime(1)-$st); echo '
'; ?> Результат: 0.08100700378418 2.4613921642303 ---- 3.0508909225464 2.4576618671417 Последние 2 менялись от "1.5/6" до "4/1", так что скорее одинаковые. А вот первая пара - говорящая) UPDATE, синтаксис 0) { echo $e; } else echo $e; } echo '
'.(microtime(1)-$st); $st = microtime(1); for ($i = 0; $i < 1000000; $i++) { if (1 > 0): echo $e; else: echo $e; endif; } echo '
'.(microtime(1)-$st); echo '
'; ?> 0.089139938354492 0.082063913345337Ответ 2
По моему это "экономия на спичках" и вряд ли кто-нибудь даст точный и правильный ответ
Комментариев нет:
Отправить комментарий