28.14. Не объединяйте длинные строки
Обычной практикой программирования в PHP является конкатенация длинных последовательностей данных без особой надобности перед их печатью. Сравните листинги 28.9 и 28.10. Конкатенация subject и contents должна произойти до того, как сценарий вызовет функцию print, и если строка contents достаточно длинная, это может занять много времени. В листинге 28.10 вызов функции print происходит несколько раз, а PHP никогда не объединит subject и contents в памяти, что сохранит ценное время. Заметим, что, так как сам по себе вызов функции print характеризуется определенными накладными расходами, не всегда следует разбивать операцию конкатенации в отдельные операторы print. В определенных случаях это также приводит к тому, что код плохо читается. По этой причине лучше следовать такой практике только при отображении длинных строк.

| Листинг 28.9. Конкатенация длинных строк_
<?php
$subject = "какая-то тема";
$contents = "... очень большой отрывок текста..."; print("Subject: $subjectnn$contents");
?>

I Листинг 28.10. Способ избежать объединения длинных строк
<?php
$subject = " какая- то тема";
$contents = "... очень большой отрывок текста..."; print("Subject: $subjectnn"); print($contents);
?>

28.15. Не обрабатывайте большие файлы с помощью Web-сервера Apache
Скорее это совет не по программированию, а по установке сервера. Если ваш Web-узел обслуживает загрузку больших файлов, может быть уместным для их обслуживания настроить специальный сервер, вместо того чтобы обрабатывать их с помощью Web-сервера Apache с активизированным PHP. Существует несколько причин поступить именно таким образом. 
Загрузка больших файлов требует много времени. Число параллельных процессов, которые использует Web-сервер Apache, обычно невелико. Процессы Web-сервера Apache, обслуживающие загрузку, становятся на время загрузки недоступными. Это уменьшает число параллельных пользователей, которые может обработать ваш Web-сервер. Процессы Web-сервера Apache потребляют относительно большие объемы памяти для каждого процесса, особенно если Apache работает с активизированным PHP. Даже если повышение максимального количества параллельных процессов Web-сервера не является обязательным, будут расходоваться зря большие объемы памяти.
Отличным решением для установки в качестве сервера загрузки является дроссе­лирующий Web-сервер thttpd <http://www.acme.com/software/thttpd/>. Он очень "легкий" и не создает нагрузки на сервер, что делает его одним из наиболее подходящих Web-серверов для обслуживания большого количества такого статического содержимого, каким являются загружаемые файлы.