Как использовать PHP для рендеринга HTML-элементов

0

Я хочу контролировать html-представление, используя php. Простой способ - добавить, если условие eg

<?php if(condition)
 echo '<div>something what I want to show</div>';
?>

но я хочу найти что-то вроде JavaEE, где я могу управлять рендерингом html-элемента с помощью атрибута render.

Я ищу что-то вроде этого:

<div render="Class::methodThatWillCheckConditions()"></div>

Можно ли сделать что-то вроде PHP?

  • 0
    самая близкая вещь для PHP - шаблонизатор. Но это не работает как JavaEE. Посмотрите на Twig
Теги:
view
render
controls

1 ответ

0
Лучший ответ

Многие фреймворки PHP, такие как Symfony 2, имеют встроенные методы для генерации HTML.

Вы также можете написать свои собственные функции и называть их, когда это необходимо.

Вы также сможете вызвать Class::methodThatWillCheckConditions(), но, насколько мне известно, вам все равно придется повторять его.

Здесь вы можете найти несколько других способов: как я могу эхо HTML в PHP?

Мне очень нравится способ делать это между PHP-тегами - таким образом ваша среда IDE будет правильно отображать ваш синтаксис HMTL. Альтернативный синтаксис улучшает читаемость:

<?php if(condition) : ?>
    <div>Hello, World!</div>
<?php endif; ?>

Я ненавидел этот синтаксис, когда начинал, но он отлично по сравнению с фигурными скобками в большом html-документе. Представьте, что у вас есть закрывающая скобка 150 строк позже, } не скажет вам, что закрытие. endif говорит вам, что закрывается if-statement.

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

PS: Не используйте короткие теги!

  • 0
    правда, это отличный синтаксис. Но все же, взгляните на движок Twig Template .
  • 0
    спасибо за совет

Ещё вопросы

Сообщество Overcoder
Наверх
Меню