Я надеюсь, что кто-то может помочь с этим вопросом новичков. Я только что пришел из среды ASP.Net, где было легко скрыть или показать куски HTML. Например: различные этапы формы, в зависимости от того, что пользователь ввел.
Скрытие или отображение <div>
/ <asp:Panel>
было очень простым, но в PHP все, что я могу сделать, это поместить мой HTML в выражение echo
. Это делает HTML очень трудным для чтения, его трудно поддерживать, и весь файл выглядит довольно грязным.
Я уверен, что должен быть лучший способ скрыть или показать куски HTML без необходимости включать в себя echo
инструкцию, но я не могу найти ни одной онлайн-документации, объясняющей, как это сделать.
Спасибо за любые советы, советы или ссылки на хорошие ресурсы PHP для этого уровня проблемы.
Учитывая PHP как внедренный язык, вы должны, чтобы получить лучшую читаемость, использовать специальные языковые формы для «шаблонов».
Вместо использования эха вы можете просто написать HTML вне тегов <?php ?>
(Никогда не используйте <? ?>
Которые могут вводить в заблуждение).
Также предлагается использовать if () :
вместо if () {
, например:
<body> <?php if (true) : ?> <p>It is true</p> <?php endif; ?> </body>
Рекомендации:
Вам не нужно помещать HTML в выражение echo
. Подумайте о том, что HTML как неявное echo
. Итак, для условного отображения фрагмента HTML вы должны искать такую конструкцию:
<?php if (condition == true) { ?> <div> <p>Some content</p> </div> <?php } ?>
Таким образом, строковый литерал HTML, который существует вне тегов PHP, просто неявно доставляется на страницу, но вы можете обернуть вокруг него логику, чтобы управлять им. В приведенном выше разделе div
и его содержимое находятся в рамках оператора if
, и поэтому кусок HTML (даже если он находится за пределами тегов PHP) поставляется только в том случае, если условие в коде PHP true
.
Попробуй это:
<?php if ($var == true) { ?> <table>...</table> <?php } ?>
Вы можете использовать PHP-теги, например, обернутые вокруг HTML, и на основе условного HTML будет либо отображаться, либо нет.