У меня есть куча HTML
файлов, которые служат шаблонами для моего веб-приложения. При загрузке страницы файлы кэшируются/загружаются в браузер и отображаются в DOM
по запросу в соответствии с маршрутизатором приложения. Однако некоторые из этих файлов шаблонов должны включать переменную содержимого в записи базы данных. Поэтому я обозначил местоположение этих данных в шаблонах с помощью определенного шаблона (рулей) и запускаю следующий код PHP
(внутри класса), чтобы заменить местоположения данными из базы данных:
$template = '<div>{{user_name}}</div>'; //template loaded with fopen
$this -> data['user_name'] = 'John Smith'; //data from server
$template = preg_replace_callback(
'/{{([a-zA-Z0-9_]+)}}/',
function($matches){
$data = $this -> data;
return (isset($data[$matches[1]])?$data[$matches[1]]:"");
},
$template);
Мне было интересно, возможно ли иметь центральную функцию в PHP
, которая проходит через все файлы HTML
и «компилирует» (используя вышеизложенное) перед тем, как передать их во внешний интерфейс? Я понимаю, что вы можете просто преобразовать каждый шаблон .html
в файл .php
и предварительно сформировать операции внутри и повторить результат, но я чувствую, что должно быть более усовершенствованное/масштабируемое решение.
did you want to compile them beforehand and keep them around as static HTML documents until they are requested
да, это то, чего я пытаюсь добиться.. - person Andreas Jarbol   schedule 04.10.2013HTML
в строкуPHP
и обработать ее со сценарием, включенным до или после запроса? Не могли бы вы сделать что-то вроде file_get_html('this'), и в таком случае, что бы это было? - person Andreas Jarbol   schedule 04.10.2013