Язык программирования PHP



         

Функция str_replace - часть 3


Однако просто поля для ввода шаблона недостаточно. Один человек введет в него одно, другой – другое. Нужно договориться о том, как создавать шаблоны, что можно в них использовать, т.е. нужно придумать язык шаблонов. Например, мы договариваемся, что при создании шаблона можно задействовать любые html-теги, а набор спецсимволов вида <!имя_элемента> определяет значение элемента с именем имя_элемента. Далее, как обрабатывать такого рода шаблоны? Можно использовать функцию str_replace():

<?php $tmpl = $_GET["shablon"]; /* шаблон, введенный пользователем. Например, это может быть такая строка: "<h1><!title></h1> <p><font size=-1><!description></font></p><p ><!author><br><!published></p>" */ function Show(){ // функция, которая производит замену // элемента шаблона на его значение global $tmpl; foreach($_GET as $k => $v) { $tmpl = str_replace("<!$k>",$v,$tmpl); } echo $tmpl; } Show(); ?>

Как эти файлы выглядят для обычного пользователя? Если мы введем в форму такие данные как показано на рисунке 8.1, то в результате получим:

Первая машина для переписи населения Идея наносить данные на перфокарты и затем считывать и обрабатывать их автоматически принадлежала Джону Биллингсу, а ее техническое решение осуществил Герман Холлерит. Перфокарта Холлерита оказалась настолько удачной, что без малейших изменений просуществовала до наших дней. А. М. Федотов 12.02.03


Рис. 8.1.  Форма для ввода описания документа «статья» и шаблона для его отображения




Содержание  Назад  Вперед