2012-02-05 4 views
4

Где лучше всего включать файлы в файл класса PHP? Например, если одному из методов нужен внешний класс, должен ли я включать файл, где он используется в этом методе, или должен ли он выполняться перед классом? Или в конструкторе? Или? Что вы порекомендуете? Плюсы? Минусы? Или это просто вопрос вкуса на самом деле?Куда поместить предложения в файл класса PHP

include_once 'bar.class.php'; 
class Foo 
{ 
    public static function DoIt() 
    { 
     new Bar(); 
    } 
} 

против

class Foo 
{ 
    public static function DoIt() 
    { 
     include_once 'bar.class.php'; 
     new Bar(); 
    } 
} 

ответ

4

Я предпочитаю его сверху, то же условность, как для #import/import/using в с/Java/C#, как это сразу же дает вам знать, что другие классы в зависимости от вашего класса на.

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

+0

Как и ваше сравнение с другими языками. Думаю, я тоже буду придерживаться этого. Могут переключаться из include, чтобы требовать также некоторых мест, поскольку это действительно правильнее, когда что-то действительно критично. – Svish

0

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

+0

Действительно. Автозагрузка уже выполнена для моих основных классов, это больше для сторонних библиотек и т. Д. – Svish

1

Я бы сказал, что это зависит.

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

Однако, если этот скрипт всегда необходим, включите его в начало скрипта.

Это действительно сводится к ситуации и требованиям.

Надеюсь, что это поможет.

0

Всегда полезно включать внешние файлы в верхней части страницы. Это будет очень легко найти позже. Если включенный файл очень большой, включите его там, где вам нужно. См. Также документацию для require_once и include_once.

Существует также просто require и include. Знайте разницу между ними и какие использовать.

1

Это зависит от архитектуры, которую вы используете. Включение файлов в начале является аккуратным, но если этот файл печатает текст, тогда вы не сможете манипулировать заголовками и т. Д.

При использовании шаблона MVC для управления шаблонами должны быть включены файлы классов.

Смежные вопросы