Допустим у нас имеется html страницы (вывод тела):
<div>Добро пожаловать $name.</div>
Пока опустим правила вывода текста, с использованием htmlspecialchars и прочих правил... Ибо вопрос в механике.
Наполнять html страницу таким содержимым не есть хорошо, да и не совсем удобно. По сути - нужно избавляться от php кода в html, как я понял.
Если я так же правильно понял - подобными делами занимается парсер. Можно и через DOM искать, либо через регулярные выражения...
Я ищу немного другой подход, возможно он и есть. К примеру:
<!-- START: text -->
<div>Добро пожаловать {name}.</div>
<!-- END: text -->
В свою очередь {name}
является тем самым именем пользователя, которое необходимо вывести на экран, используя методы вывода в php.
Либо, если вдруг у нас есть таблица, то будем иметь подобный вид:
<!-- START: text -->
<div>
<span>Вывод {text.name}</span>
<!-- START: table-->
<table>
<tr>
<th>Имя</th>
<th>Фамилия</th>
</tr>
<!-- START: row-->
<tr>
<td>{table.firstname}</td>
<td>{table.lastname}</td>
</tr>
<!-- END: row-->
</table>
<!-- END: table-->
</div>
<!-- END: text -->
В данной конструкции мы уже вывод храним в массиве и имеем иерархическую структуру вывода - выводим строки таблицы в цикле. В случае, если нам нужно вывести 2 одинаковые таблицы на страницы - будет отсутствие конфликта в подобном случае.
В связи с вышеперечисленным - вопрос: есть ли подобные парсеры, производящие вывод данных html в подобном виде? Написать можно, алгоритм есть, но смысл придумывать велосипед?:)
То о чем вы пишите называется шаблонизатором. Он бывает и в js и в php и в других языках.
Есть подход в разработке приложений называется MVC. В нем принято разделять приложения. На модель(данные), контроллер(логика) и представление и вот за представления и отвечают разного вида шаблонизаторы. Они призваны убрать влияние php кода в шаблонах сайта.
Вот шаблонизаторы например для php
Вот на js
Статья на хабре про шаблонизаторы в php.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Вопрос следующий имеется страничка на HTML в ней есть поля для логина и пароля для подключения к БДКак передать вводимые данные в скрипт?
Есть динамические данные от пользователя, которые на сервере необходимо проверять на вхождение в тот или иной диапазон и в зависимости от этого...