Я заметил, что некоторые из других ответчиков (SP) упомянули MVC. MVC невероятно важен, потому что он позволяет вам отделить вашу бизнес-логику от уровня отображения/интерфейса «представления» и логику вашей базы данных от вашей бизнес-логики.
Например, AlienWebguy, я бы порекомендовал Code Igniter, но для PHP существует ряд других хороших фреймворков.
Что касается того, что вы спрашиваете, так это то, как вы должны структурировать как свой уровень представления, так и бизнес-логику. Если у меня есть что-то общее, например, верхний и нижний колонтитулы, я добавлю их
view/include/header.php
и view/include/footer.php
Файл заголовка обычно содержит тег <html>
, ссылки на таблицы стилей, любые распространенные файлы сценариев javascript и общий заголовок (например, логотип и навигацию). Файл нижнего колонтитула обычно содержит информацию об авторских правах, любые ссылки нижнего колонтитула и файл </body></html>
.
Как правило, при эффективном создании представлений вы должны стремиться к тому, чтобы они обрабатывали объекты модели для отображения HTML и не генерировали абсолютно никакого HTML на уровне вашего контроллера. НАПРИМЕР.
<table>
<?php
foreach ($users as $user) {
printf('<tr><td>%s</td><td>%s</td></tr>', $user->id, $user->user_name);
}
?>
</table>
Это делает вещи намного чище, избегая вкраплений проблем на неправильном «слое».
Другая вещь, которую вы можете сделать, если вы не заинтересованы в написании прямого PHP в своих представлениях, это то, что вы можете использовать механизм шаблонов. Code Igniter включает поддержку (но вам не обязательно использовать) механизм шаблонов.
person
hsanders
schedule
24.05.2012