2013-05-22 1 views
0

Я делаю сайт для друга, и у меня есть общий вопрос о том, как я должен делать файлы.Должен ли я использовать много файлов php/html или только один?

Я делаю отдельный файл html для каждой страницы (например, index.html, forgetpassword.html, activate.html и т. Д.), А также отдельный файл PHP для обработки каждой формы (например, processlogin.php, активировать. php, forgetpassword.php и т. д.)

Мне интересно, если лучше иметь один большой файл php (или как можно меньше) для обработки всех форм входа/активации/забытого пароля и т. д. Должен ли я также иметь один файл PHP, который содержит все html-файлы? Есть ли способ, который в подавляющем большинстве лучше другого?

+0

Я думаю, что нет никакого «лучшего» решения, для меня я предпочитаю иметь свои функции на 1 странице вместо 1000 разделенных файлов, поэтому мне нужно включить только один файл для моих функций в моем заголовке. – Matheno

+0

@Marijke - вот почему автозагрузчики настолько полезны, вам не нужно беспокоиться о включении всего вручную. –

+0

Использование нескольких файлов differeent php (в зависимости от объема вашего проекта) часто бывает проще в обслуживании. Кроме того, это позволит увеличить время загрузки, так как вы загружаете только скрипты php, необходимые для запуска каждой страницы, а не массивный php-файл, когда вы загружаете файл только для нескольких строк кода. – leigero

ответ

0
Is there a way that is overwhelmingly better than another? 

Существует множество способов решения такого рода проблем.

Во-первых, не лучше иметь один большой файл php для обработки форм. Ваш подход к обработке HTML и PHP в отдельности не слишком ошибочен, хотя вам нужно структурировать ваше приложение в лучшем виде.

Я бы предложил вам фронтальный контроллер. Это означает, что у вас есть один файл (index.php f.e), который принимает все ваши запросы и в зависимости от параметров отправляет его, он будет обрабатывать действия, включив соответствующие файлы.

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

Также обратите внимание на подход MVC для еще лучшего разделения проблем.

+2

Я принял ваш совет и взглянул на подход MVC и, хотя на некоторое время у меня была боль в голове, я его реализовал, и я думаю, что это сделает мою жизнь намного легче в будущем :-) – user2366123

+0

Да, для большинство людей это может быть очень запутанным пониманием MVC, когда они никогда не слышали об этом раньше. Но, как вы уже сказали, это оправданно стоит усилий :) – thpl

2

Разделение файла должно отвечать следующим критериям:

  1. Будет ли он прост в обслуживании и расходуют
  2. Будет ли повторять мой код часто

То есть, я предлагаю вам разделить не менее:

  1. Общий шаблон (header.php, footer.php)
  2. Страницы для обычного содержимого, информативные страницы (в том числе header.php + footer.php)
  3. Страницы для каждого сложного примера задачи: контактная формы, логин, забыл пароль, и т.д.

Одна общая практика должна включать форма входа в заголовок.

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