ПредишенСледващото

Един от най-често срещаните проблеми, стоящи пред уеб-програмист е разделянето на логиката за събиране на данни от образци за представяне на данни. За да се реши този проблем често използват HTML-документ шаблони, които работят с пълни данни програми. Това ви позволява да оформление страници на друго лице, или да промените външния вид на страницата, без да се променя самата програма.

CPAN осигурява програмист с възможност за избор на различни инструменти за работа с шаблони. Сред тях са: HTML :: Template, Текст :: Template, Шаблон инструментариум. Обикновено техниката на работа с всички тези модули е същото. Програмистът създава един обект, който сочи към желания шаблон и след това формира набор от данни, за да се пренесат на шаблона и шаблона се извършва, за да се запълни, и в резултат на това обратно под формата на готов HTML страница. Нека погледнем по-отблизо в HTML модул :: шаблон.

HTML :: Template също така позволява на програмиста да контролира работата с шаблони. Например, когато се използва в комбинация с модул mod_perl можете да използвате за кеширане анализирани шаблони и използването на резултатите в различни скриптове. В допълнение към кеширане на програмиста да дефинирате филтри, които ще направят обработка на генерирания текст. Всички параметри на шаблона са посочени като при създаването на обект, който описва шаблона.

създаване обект

Ето един пример за създаване на обект от шаблон намира в template.tmpl файл е даден в същото време, че имената на шаблона буквите е от значение:

ми $ шаблон = HTML :: Template-> нов (име => 'template.tmpl ", case_sensitive => 1);


Ако системата е настроена среда променлива $ HTML_TEMPLATE_ROOT на и шаблонът е установен относително име на файла, след това името ще бъде добавена към стойността на $ HTML_TEMPLATE_ROOT.

постигане на резултати


За завършен шаблона, просто извикате функция за извеждане на желания обект. Това връща генерирания текст. В този случай, на шаблона не се променя състояние на обекта.

Тъй като много често е резултат от работата се записва във файла, за да се намали натоварването, вие използвате print_to параметър може да премине функция на изходния файлов дескриптор, който ще бъде издаването на резултатите. Така например, по следния начин:

$ Template-> изход (print_to => * STDOUT);

Поставяне на променливи


За да вмъкнете данни в шаблона, който трябва да го напълни с параметъра на функцията. Парам хеш функция предава данни като ключов => стойност. За сложни структури от данни, като например вложени цикъла, стойността може да е връзки с други списъци и хешове. Ето един прост пример за използването на модула:

себе HTML :: Template;
# Отворете файла на шаблона
ми $ шаблон = HTML :: Template-> нов (име => 'test.tmpl');
# Попълнете параметрите на шаблона
$ Template-> параметри (НАЧАЛО => $ ENV, PATH => $ ENV);
# Изпращане на заглавната част на Content-Type
печат "Content-Type: текст / HTML \ н \ Н";
# Издаване на крайния резултат
отпечатате $ template-> изход;


За да използвате променливата шаблон име VARNAME използва строителство . Стойността поставен във функцията на хеш използване Парам въведе този маркер. В този случай, ние се документът не е в пълно съответствие с HTML. Ако се притеснявате за правилния синтаксис на документа, в следната форма може да се използва вместо този таг: . Тя работи по същия начин като предишния, но тя не е в нарушение на верността на документа за HTML. И двете форми могат да бъдат използвани в рамките на други етикети, като например:

">.

Обработка на изходните променливи могат да бъдат контролирани от параметъра маркер, наречен ESCAPE. Приемливи стойности са HTML и URL, като по този начин е налице конверсия не е разрешен в този контекст.

условни конструкции


Друг често използван структура е състоянието. Тя е с форма данни 1данни 2. В този случай, данните ще се появят в резултат от 1, само ако променливата име IMYA_UPRAVLYAYUSCHEGO_PARAMETRA ще има истинска стойност, в противен случай резултатът ще бъде 2. Данните модул позволява използването само на един клон условия, без да се използва . Пълнене променлива се появи, както обикновено.

Срещу в действие таг таг . Той има синтаксиса данни и вмъква данните само ако променлива IMYA_UPRAVLYAYUSCHEGO_PARAMETRA има невярна стойност или не е определена.

параметри функция може да се използва за получаване на стойността на споменатия параметър. За да направите това, просто се обадете на функцията с името, което искате.

оператор цикъл


Важно е етикет етикет, посочващ цикъл. Той има синтаксис е както следва: Повтарящата част. Частично LOOP_NAME трябва да бъде препратка към списък с данни. Този списък може да се съхранява и просто ценности, както и връзки към други хешове на данни, която ви позволява да се изгради с вложена структура, както в следния пример.

Ако напишете в нашия шаблон като този дизайн








Вашето име: позиция:

Свързани статии

Подкрепете проекта - споделете линка, благодаря!