<ctpp/> главная .:. скачать .:. документация .:. faq .:. разработчикам  
o Главная
    Скачать!
    Установка

o Помощь
    Что такое CTPP?
    Как работает CTPP?
    Онлайн-документация
    FAQ

o В действии
    Проекты
    Первые шаги
    Как сделать?..
    Разработчикам

o В разработке
    Тесты производительности
    Расписание
    Разработчики

    Благодарности




Урок 1: Пишем "Hello, World!"

Пользоваться шаблонизатором в языке PERL - не просто, а очень просто, даже проще, чем в C++. Для написания первой программы на PERL, нам потребуется модуль HTML::CTPP2.
Его установка не представляет никаких сложностей: perl Makefile.PL && make && make install.

Создаем файл шаблона hello.tmpl:

Hello, <TMPL_var name>!
Your home catalog is: <TMPL_var home>

Компилируем шаблон:

ctpp2c hello.tmpl hello.ct2

Далее нам будет необходимо загрузиь модуль HTML::CTPP2 и инициализировать его:

use strict;
use HTML::CTPP2;
my $T = new HTML::CTPP2();

Загружаем откомпилированный шаблон:

my $Bytecode = $T -> load_bytecode("hello.ct2");

Если же нам необходимо загрузить исходный код, следует воспользоваться методом parse_template:

my $Bytecode = $T -> parse_template("hello.tmpl");

В дальнейшем можно сохранить откомпилированный шаблон на диск:

my $Bytecode = $T -> save("hello.ct2");

Для вставки параметров в шаблонизатор используется функция param:

my %H = (name => $ENV{"USER"}, home => $ENV{"HOME"});
$T -> param(\%H);

Выводим результат:

print $T -> output($Bytecode);

Если все сделано правильно, результат будет примерно следующий:

Hello, stellar!
Your home catalog is: /home/stellar

Полный текст программы - ниже:

#!/usr/bin/perl
use strict;
use HTML::CTPP2;

# Создаем объект
my $T = new HTML::CTPP2();

# Загружаем откомпилированный шаблон
my $Bytecode = $T -> load_bytecode("hello.ct2");

# Загружаем исходный код
# my $Bytecode = $T -> parse_template("hello.tmpl");

# Сохраняем откомпилированный шаблон на диск
# $Bytecode -> save("hello.ct2");

# Вставляем параметры
my %H = (name => $ENV{"USER"}, home => $ENV{"HOME"});
$T -> param(\%H);

# Выводим результат
print $T -> output($Bytecode);



Copyright © 2003 - 2008 CTPP Dev Team.