PHP переменные в HTML - PullRequest
       9

PHP переменные в HTML

1 голос
/ 03 апреля 2011

Ну, извините, с тем же вопросом снова, я видел в phpbb шаблоны в формате html, и они также имеют html-теги, но между ними есть переменные и значения массива php, а в основном индексном файле они просто объявили переменные и в конце концов, включенный шаблон и вуаля! страница индекса отображается без каких-либо ошибок, теперь я хочу создать переменную или массив и добавить эти имена в html-файл следующим образом:

index.php:

$var1 = "text";

include "file.html";

file.html:

this is {var1}

и вывод должен прийти "это текст". Может кто-нибудь сказать мне, как это сделать?

РЕДАКТИРОВАТЬ: я не хочу php-коды, такие как echo и все просто {}, и я получаю вывод как «Это {var1}».

Ответы [ 4 ]

2 голосов
/ 03 апреля 2011

вам не нужны шаблоны.

this is <?php echo $var1?>

или если включены короткие теги

this is <?=$var1?>

2 голосов
/ 03 апреля 2011

Это потому, что он использует HTML-файл в качестве шаблона.Затем я анализирую переменные и заменяю их фактическими данными.

1 голос
/ 03 апреля 2011

Я использую что-то вроде этого:

$content = file_get_contents($content_file);
                $pattern ='/<\$([a-zA-Z]+[a-zA-Z0-9_]*)>/';
                preg_match_all($pattern, $content, $matches);

                foreach($matches[1] as $match){
                    if(isset($$match)){
                        $content = preg_replace ('/<\$'.$match.'>/', $$match , $content, 1);
                    }

Это позволит вам использовать переменные, подобные этой <$varname>

Если вы хотите использовать синтаксис {varname}, просто перепишите шаблон.Для файла $ content_file обязательно укажите путь к файлу.

Редактировать: Упс ... пришлось исправить мои знаки меньше / больше чем ...

0 голосов
/ 03 апреля 2011

Вы не можете просто включить файл, вы должны прочитать файл в переменную и заменить {var} на $ var.Если у вас уже есть массив доступных замен - используйте str_replace для выполнения работы.Но это плохая практика, используйте вместо этого короткие теги или эхо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...