DrunkMaster
@DrunkMaster

Как правильно сделать MVC?

Рассмотрим простой пример логики и представления:
<?php
    if($login == 'vasya'){
        $a = 'Вы успешно авторизованы';
    }
?>
<div class="response">
    <div class="alert alert-success" role="alert"><?php echo $a; ?></div>
</div>

Теперь нам нужен ответ и на случай успешной авторизации и на случай неудачной:
<?php
    if($login == 'vasya'){
        $a = '<div class="alert alert-success" role="alert">Вы успешно авторизованы</div>';
    } else {
        $a = '<div class="alert alert-danger" role="alert">Ошибка</div>';
    }
?>
<div class="response">
    <?php echo $a; ?>
</div>

Но так у нас уже смешивается логика и код представления. Можно конечно внедрить 2 переменных $a и $b на удачный и неудачный случай, но тогда логика перемещается ниже, т.е. надо делать if уже в шаблоне:
<div class="response">
    <?php
    if(!empty($a)){
        echo $a;
    }
    if(!empty($b)){
        echo $b;
    }
    ?>
</div>

Шаблонизаторы СМЫСЛ всего этого не меняют, просто вместо echo $a; будет {{ a }}
  • Вопрос задан
  • 209 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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