[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Структура проекта
13th
Здравствуйте.
Вопрос такой: как лучше организовать структуру в проекте?
В книге Веллинга и Томсон используется такой подход:
Каждая страница зависит от трех файлов (собственно главный файл, func.php - файл с функциями выборки и т.д., output - файл с функциями вывода html кода). То есть чтобы вывести из базы какие-то данные нужно в главном файле выполнить такие действия:
require_once('func.php');
require_once('output.php');
$array = get_data(); // тут из func.php создается выборка и передается в переменную, то есть еще постараться нужно, чтобы массив с выборкой в другой файл передать (прогоняется через отдельную функцию, ибо fetch не работают тут)
display_data($array) // функция из ouput.php.. ну тут все понятно - массив просто выводится как нужно, именно в output он обрабатывается через foreach и т.д.

Получается на главной странице Html кода нет вообще, а только вызываемые функции.
Насколько это правильно или нужно срочно менять подход?
sergeiss
Цитата (13th @ 11.03.2014 - 10:55)
или нужно срочно менять подход?

А почему это вызывает у тебя приступ паники? smile.gif Думаешь, что "Веллинг и Томсон" тебя обманывают и предлагают заведомо плохие решения?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
13th
sergeiss
Думаю, что постоянно передавать массив с выборкой в другой файл через отдельную функцию - странно.
И большинство, как я понял, именно на 2 файла разделяют логику.
Michael
По каким то сильно устарелым книгам ты учишься.
Почитай про mvc, ооп, работу с шаблонами, посмотри фреймворки, можно минифреймворки и тогда вперед изобретать свое или использовать готовое.

_____________
There never was a struggle in the soul of a good man that was not hard
13th
Michael
Книга 2011 года с крайне положительным отзывами.
Конечно прочитаю, но много проектов не используют mvc и фреймворки, а работать с такими проектами так или иначе когда-нибудь придется, поэтому и хочется основы закрепить, а потом уже двигаться дальше.
zelenuy
13th
Да процедурный метод он же прост как китайский барабан smile.gif после ООП и MVC, процедурки будите щелкать как семечки)
bestxp
вообще-то все успешные проекты используют mvc , даже ВК , но без ООП вот такой у них заскок

МВС это разделение логики на
получение данных
вывод данных
и посредника который получает данные и отдает в вывод


в твоем случае контроллер тот файл, модель get_data()
отображение display_data($data)

а вот когда все смешано это уже хреново
sergeiss
13th, если говорить серьёзно, то у тебя, похоже, просто имеется недопонимание того, что делается.

Вот что это за комментарий, а?
Цитата (13th @ 11.03.2014 - 10:55)
// тут из func.php создается выборка и передается в переменную, то есть еще постараться нужно, чтобы массив с выборкой в другой файл передать (прогоняется через отдельную функцию, ибо fetch не работают тут)

Содержимое файла func.php уже стало частью текущего файла, ты его уже "влеил" в свой "главный" файл. Аналогично и второй файл, точнее, его содержимое, уже находится тут же.
Если ты содержимое указанных файлов перепишешь в основной и уберешь require, то эффект будет тот же.

Использование include/require позволяет тебе строить сайт "по кирпичикам", подключая только те части, что в данный момент нужны.

PS.
Цитата (13th @ 11.03.2014 - 11:20)
но много проектов не используют mvc...

Держись подальше от проектов, которые не используют MVC. Потому что там будет каша.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
13th
zelenuy
да, наверно так и есть.

bestxp
спасибо, буду значит ООП использовать

sergeiss
я понимаю как работают include и пр.
смысл в том, что массив все равно не передается через обычный fetch_assoc и return, поэтому и назвал это передачей из одного файла в другой, не знаю как еще это назвать.
Цитата
Держись подальше от проектов, которые не используют MVC. Потому что там будет каша.

боюсь, не всегда есть богатый выбор)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.