Почему require_once так плохо в использовании? - PullRequest
139 голосов
/ 09 октября 2008

Все, что я читал о лучших практиках PHP-кодирования, постоянно говорит: не используйте require_once из-за скорости.

Почему это?

Как правильно / лучше сделать то же самое, что и require_once? Если это имеет значение, я использую PHP5.

Ответы [ 14 ]

0 голосов
/ 09 октября 2008

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

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

0 голосов
/ 09 октября 2008

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

Вы должны знать, если вам нужно включить файл.

0 голосов
/ 09 октября 2008

Вы тестируете, используя include, альтернативу oli и __autoload (); и протестируйте его с чем-то вроде APC .

Я сомневаюсь, что использование константы ускорит процесс.

0 голосов
/ 09 октября 2008

Я думаю, что в документации PEAR есть рекомендации для require, require_once, include и include_once. Я следую этому руководству. Ваша заявка будет более понятной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...