вывод нескольких аргументов при включенном output_buffering - PullRequest
2 голосов
/ 28 июня 2009

Один из Googles Давайте сделаем Интернет быстрее В разговорах говорилось об использовании echo с несколькими аргументами в PHP вместо использования конкатенации печати или строк.

echo 'The ball is ', $color;

Вместо любого из этих

echo "The ball is $color";
echo 'The ball is ' . $color;

Что если буферизация вывода в игре?

Какая разница между использованием echo с несколькими аргументами и буферизацией вывода по сравнению с использованием альтернативных методов без буферизации вывода?

Ответы [ 2 ]

5 голосов
/ 28 июня 2009

Обязательно прочитайте опровержение команды PHP из Советы по повышению производительности Google .

В частности, он (Гвинн Раскинд) говорит:

4) «Не используйте конкатенацию с эхом».

Это полная противоположность правильного совета. Ручки двигателя несколько аргументов для echo () таким образом, чтобы конкатенация (или интерполяция строк в двойных кавычках) на самом деле намного быстрее. Увидеть бенчмарк размещен на http://pastie.org/523020.

1 голос
/ 28 июня 2009

первая версия должна быть немного быстрее, потому что она не должна анализировать строку для раскрытия переменной (одинарные кавычки) и не должна тратить время на объединение двух строк перед их записью. я не думаю, что буферизация повлияет на это

...