Является ли использование нескольких PHP плохой идеей? - PullRequest
3 голосов
/ 17 июля 2009

Я нахожусь в процессе создания PHP сайта. Он использует несколько классов PHP, которые в настоящее время все в одном PHP включают.

Тем не менее, я использую Aptana IDE , и файл теперь начинает его падать (это около 400 строк) Поэтому мне было интересно, будет ли какое-либо негативное влияние включения всех файлов по отдельности.

Ток:

основной файл:

include("includes.php");

includes.php:

contains php classes

Рекомендуется:

mainfile: основной файл:

include("includes.php");

includes.php:

include("class1.php");
include("class2.php")

Ответы [ 7 ]

6 голосов
/ 17 июля 2009

Несколько PHP-включений - это хорошо, и 400 строк не должны иметь большого значения. Мое беспокойство будет связано с Aptana IDE, прежде чем я даже буду считать, что мой код - это проблема.

Разбиение вашего кода на несколько модулей PHP поможет вам использовать более объектно-ориентированный подход и упростит базу кода. Я рекомендую это.

3 голосов
/ 17 июля 2009

Сбой среды IDE из-за файла в 400 строк? Я бы нашел новую IDE.

Однако лучше разделить классы на отдельные файлы. Возможно, не строго один класс на файл, а только тесно связанные классы в одном файле.

2 голосов
/ 17 июля 2009

Только для двух файлов стоимость не будет слишком большой; для сотен файлов это может быть немного больше ... Но затем возникает еще одна проблема: «Как определить, что входит в какой файл?»

Хороший ответ на этот вопрос "один класс на файл"; и, для тех, "один каталог на функциональный элемент"

Вы можете рассмотреть возможность использования кэша кода операции, если вы можете установить расширения на свой сервер; например, я почти всегда работаю, используя APC (см. также руководство по PHP ), который довольно прост в установке и действительно хорош для производительности (иногда он может делиться на 2 загрузки процессора сервера ^^)

Так же, как sidenote: если Aptana не может обрабатывать 400-строчные файлы, вам стоит подумать об использовании другой IDE ^^ (Eclipse PDT неплох, если у вас 2 ГБ ОЗУ - на основе Eclipse, как Aptana, поэтому не должно быть слишком «новым»)

0 голосов
/ 24 апреля 2013

Множественные включения - лучший способ упорядочить ваш код, я также рекомендую его, но в некоторых случаях (как у меня) выполняется только первое включение, я не знаю, почему я застрял с ним

0 голосов
/ 17 июля 2009

Я думаю, что ваши включения должны, как правило, идти только на один уровень, если только у вас нет веских причин. Что произойдет, так это то, что вы в конечном итоге будете преследовать какую-то проблему и будете преследовать диких гусей по включаемым файлам, и вы можете даже использовать такие вещи, как «include_once» или «require_once», что почти наверняка является запахом кода.

0 голосов
/ 17 июля 2009

Отрицательно то, что требуется больше дискового ввода-вывода. Однако на этапе производства вы все равно должны использовать кэш кода операции, и это сведет на нет многие негативные последствия.

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

0 голосов
/ 17 июля 2009

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

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