Эта глава затрагивает вопросы эффективности и отладки, которые можно скорее отнести к области искусства, чем науки. Эффективность не должна быть первостепенной задачей при создании программного кода. Сначала необходимо написать код, который бы работал, а задачей второго плана может быть обслуживаемость и понятность созданного программного кода.
По мере приобретения опыта в программировании можно переключиться на тактические аспекты проектирования. Это и понятно, поскольку подобные структуры сталкиваются с похожими проблемами. В процессе выполнения проектов индивидуальные разработчики и коллективы разработчиков создают свои собственные идиомы, которые легко можно отследить по журнальным статьям и репозиториям программных кодов. Приняв на вооружение определенную идиому, разработчик может положиться на нее как на уже решенную проблему. Такой подход позволяет сэкономить время при написании программного кода.
В большинстве проектов большую часть времени, необходимого для выполнения программы, потребляет наименьшая часть кода. Конечно, имеет смысл прежде всего обратить внимание на самый медленный фрагмент программного кода. Если производительность возрастает до приемлемого уровня, оптимизацию можно закончить.
При наличии ошибки в сценарии время, затраченное на написание полных комментариев и обозначений, окупится сторицей. Иногда простой просмотр проблемного кода позволяет обнаружить в нем узкие места. Для того чтобы разобраться в проблеме, достаточно распечатать значения переменных.
Из книг, посвященных данной теме, можно порекомендовать следующие. В книге WritingSolid Code Стива Мэгьюра (Steve Maguire) описывается создание приложений на языке программирования C, но многие концепции, изложенные в ней, применимы и для программирования сценариев PHP. Другой такой книгой является книга Брайана У. Кернигана, Роба Пайка Практика программирования, выпущенная на русском языке в ИД "Вильямс" в 2004 году. 
28.1. Оптимизация
Одна из причин, по которой был выбран PHP, - это возможность быстро создать Web-приложения, не беспокоясь при этом о следовании всем правилам хорошего проектирования. Когда дело доходит до быстрого создания прототипов, PHP проявляет себя с наилучшей стороны. Когда наступает очередь использования этих возможностей PHP, на передний план выступает ответственность за создание прозрачного кода, когда наступает время создавать программный код длительного использования. Следование руководству по написанию стиля поможет создавать понятные программы, но, к сожалению, неэффективные.
Оптимизация представляет собой процесс тонкой настройки программы для ускорения ее работы или снижения потребления ею памяти. Потребление памяти не входит в число первостепенных факторов, так как память стала относительно недорогой, а вот уменьшение времени выполнения всегда является желательным.
Начиная писать программу, необходимо чем-то пожертвовать, например произво­дительностью в пользу прозрачности написания. Следуйте соглашениям по кодированию, таким как использование mysql_fetch_row вместо mysql_result, но помните, что время программирования является достаточно дорогим, особенно на этапе понимания кода программистами. В таком случае лучшим решением всегда является простейшее.
После завершения разработки программы необходимо обратить внимание на ее производительность. Если проект выигрывает от формальных требований к спецификациям, обратитесь к любым ограничениям рабочих характеристик. Не будет лишним рассмотреть максимальную нагрузку на страницу для Web-приложений. На время, проходящее от щелчка на ссылке до полного появления страницы на экране, влияют самые различные факторы. Обязательно ограничьте влияние таких факторов, которые невозможно контролировать, как, например, скорость работы сети.