Задать вопрос
@del993788

Зачем в yii2 нужен img helper, если просто img короче?

Подскажите, зачем писать
<?= Html::img("@web/images/img.png")?>
когда можно написать
<img src="/images/img.png">
?

Второй вариант как минимум короче, но я сам неоднократно замечал, что в коде используют именно html::img. Зачем?
  • Вопрос задан
  • 887 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
orlov0562
@orlov0562
I'm cool!
Хелперы - автоматизируют действия. Например, даже в твоем примере, есть алиас (@web), который при изменении затронет все места, где будет указан. А в случае с обычным html-ем придется менять пути вручную. Кроме того, у методов Html::* хелперов есть дополнительные параметры, передав которые можно повлиять на сформированный тег. И напоследок, это позволяет не смешивать html и php в кашу.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Snewer
1. Иногда приятнее работать только с PHP кодом, и не использовать HTML вовсе.
2. В любой момент можно изменить поведение всех HTML заготовок во всем проекте.
3. Удобно при тестировании
Ответ написан
Комментировать
выжимай из фремворка "все" по максимуму, на ларавеле есть аналогичные хелперы, но я их не использую придерживаюсь варианту номер два.
Ответ написан
Комментировать
@dady_KK
PM
Ответ очень прост и его уже называли, то есть для того чтобы поменять к примеру только альяс в роутинге и везде все само автоматом встанет по-новому. Просто понимание необходимости этого приходит когда кодовая база не только тобой писалась либо большая или доработки идёт плотным потоком и не всегда удаётся "помнить" про все места где это использовалось и не всегда поиск по проекту спасает
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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