anton_reut
@anton_reut
Начинающий веб-разработчик

Постигаю MVC, для начала обучения так сойдет?

Изучаю отделение контроллера, логики и шаблона чтобы превратить свой учебный проект из единой каши php+html+mysql в что-то более менее пристойное, в контроллере для упрощения понимания начал писать так:

<?php
if(isset($_GET['value']) && $_GET['value'] == 1 ){
	include '../model/model_1.php';
	include '../view/view_1.php';
}
else {
	include '../model/model_default.php';
	include '../view/view_default.php';
}
?>


То есть если условие 1 -> грузим такие то Модели и Вьюхи, если условия нет -> грузим дефолтные ну и так далее. Пока без классов, потому что во всех уроках СРАЗУ код почему то идет на ООП, что я считаю довольно сложным для старта.
  • Вопрос задан
  • 544 просмотра
Пригласить эксперта
Ответы на вопрос 3
NikitOS_MV
@NikitOS_MV
Король шутов
В уроках все хорошо.
ООП не такой уж и сложный, это только так кажется, пока не попробуешь.

Посмотрите эти уроки, тут все понятно (ИМХО) - клик
Ответ написан
hack504
@hack504
Сойдёт, но лучше раскидать сразу на отдельные блоки (даже без ООП) - вы хоть будете видеть что есть Модели, Вьюшки, Контроллеры и роутинг:
<?php

function response($view, $model) {include $view;include $model;}

$models = array(
    'default' => '../model/model_default.php',
    'some' => '../model/model_1.php'
);

$views = array(
    'default' =>  '../view/view_default.php',
    'some' => '../view/view_1.php'
);

function controller($page) {
    GLOBAL $models, $views;
    switch ($page) {
        case 'firstPage':
            response($models['some'], $views['some']);
            break;
        case 'contacts':
            response($models['default'], $views['some']);
            break;
        case 'default':
            response($models['default'], $views['default']);
            break;
    }
}

function router(){
    if (isset($_GET['value']) && $_GET['value'] == 1) {
        controller('firstPage');
    } else {
        controller('default');
    }
}

router();
Ответ написан
Комментировать
@SeApps
Я художник, я так вижу
В принципе - да, если не учитывать ООП, то хорошо. Токо контроллеров лучше сделать много, (на каждую страницу), и подгружаются они в index.html, в зависимости от параметров.
И это... учите ООП! Это почти несложно, а профит большой.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы