У меня хорошо настроена админка? - PullRequest
0 голосов
/ 08 мая 2009

Итак, в основном, это - это то, что у меня есть.

Но разве это хорошая практика? Я начал разделять мой файл admin.php из-за его увеличения в размере.

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

Ответы [ 3 ]

2 голосов
/ 08 мая 2009

У меня были похожие мысли при разработке собственного движка CMS. В конце концов я получаю то же самое решение, что и вы, но с Smarty, для разделения логики и представления.

Но теперь через некоторое время у меня другое и намного лучшее решение. Используйте Шаблон команды . Вам нужно будет разделить ваш код на классы, а не на файлы, как вы это сделали. Вы должны установить командный интерфейс, который будут реализованы всеми вашими классами. Таким образом, ваша страница администратора будет действовать как Front Controler (еще один шаблон дизайна).

Ответственность Front Controler заключается в сборе всех входных данных с вашей страницы, то есть в вашем случае $ _GET ["action"], в соответствии с этими действиями вам придется создавать экземпляры объектов Command, а после этого оператора switch вы будете вызывать $ command -> Execute (); который выполнит код, содержащийся в ваших классах Command.

В качестве примера вы будете иметь: EditPageCommand, DeletePageCommand, NewPageCommand и т. Д.

Избегайте разделения кода в файлах. Попробуйте использовать классы для всего и выучить шаблоны. ;)

1 голос
/ 08 мая 2009

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

0 голосов
/ 08 мая 2009

Разделение большого файла на несколько меньших, более модульных - это всегда хорошая идея IMO.

Однако, глядя на ваш код, я бы использовал механизм шаблонов HTML, чтобы не смешивать логику и представление. Посмотрите на smarty .

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