Как соединить php и html
Перейти к содержимому

Как соединить php и html

  • автор:

Как объединить PHP и HTML?

До этого момента я пилил консольные скрипты. Теперь я хочу создать сайт на PHP и такой вопрос как правильно совмещать PHP и HTML? Чтобы не нарушить читабельность.

  • Вопрос задан более трёх лет назад
  • 4244 просмотра

Комментировать
Решения вопроса 4

ThunderCat

ThunderCat @ThunderCat Куратор тега PHP

5e5fa6caf1ba47d19732e2fb43e4ad79.png

Ответ написан более трёх лет назад
Нравится 10 2 комментария

kirill_782

Кирилл Жиляев @kirill_782 Автор вопроса

Ну раз ответ залайкали то уточню у вас: index.php является точкой входа и некоторой связующей, которая запускает сам код, и выставляет данные в шаблон и выводит его? И собственно от вставок (), циклов и условий никуда не деться?

ThunderCat

ThunderCat @ThunderCat Куратор тега PHP

Кирилл Жиляев: упрощенно — индекс создает загрузочный объект, который грузит следующие компоненты: Роутер, отвечающий за расшифровку урл, и вызывающий соответствующий контроллер. В контроллер создаем необходимые для работы объекты, и передаем результаты всех работ в Вид, тут уже чистая манипуляция с данными обычно — вывод циклами и поштучно, кароче шаблоны. Весь смысл разделить логику приложения(такую как вытаскивание данных из базы, переструкткрирование, работа с файлами/обработчики пост запросов и тд) от шаблонов представления, которые в итоге нифига вообще о логике не знают. Тупо получают готовый набор данных. От ечо и проч. циклов никуда, если не использовать еще какой-то шаблонизатор поверх, твиг допустим(мое имхо — это масло масляное). Просто при таком подходе ОГРОМНЫЙ кусок расчетов и телодвижений будет вынесен от хтмля на километр. В теории — объекты(модели) должны быть толстыми(выполнять 99% логики методами объекта), а контроллеры тонкими(то есть в принципе их задача ответить на текущий урл созданием соответствующих объектов и минимальные манипуляции с ними, в основном вызовом методов объектов)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *