Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Расширенная установка

Эта глава является продолжением базовой установки; пожалуйста, сперва прочитайте её.

Немного более гибким способом установки Smarty является наследование класса и инициализация вашего собственного окружения Smarty. Таким образом, вместо того, чтобы постоянно устанавливать пути директорий, присваивать одни и те же переменные и т.д., мы можем всё это сделать в одном месте.

Давайте создадим новую директорию /php/includes/guestbook/,а в ней - новый файл, который назовем setup.php. По условиям нашего примера, /php/includes находится в include_path. Убедитесь, чтобы то же самое было и у вас, или используетй абсолютные пути.

Example 2.10. /php/includes/guestbook/setup.php


<?php

// загружаем библиотеку Smarty
require('Smarty.class.php');

// Файл setup.php - это хорошее место для
// подключения библиотечных файлов вашего приложения,
// вы можете сделать это прямо здесь. Пример:
// require('guestbook/guestbook.lib.php');

class Smarty_GuestBook extends Smarty {

   function Smarty_GuestBook()
   {

        // Конструктор класса.
        // Он автоматически вызывается при создании нового экземпляра.

        $this->Smarty();

        $this->template_dir = '/web/www.example.com/guestbook/templates/';
        $this->compile_dir  = '/web/www.example.com/guestbook/templates_c/';
        $this->config_dir   = '/web/www.example.com/guestbook/configs/';
        $this->cache_dir    = '/web/www.example.com/guestbook/cache/';

        $this->caching = true;
        $this->assign('app_name', 'Guest Book');
   }

}
?>

    

Теперь давайте изменим index.php, чтобы он использовал setup.php:

Example 2.11. /web/www.example.com/guestbook/htdocs/index.php


<?php

require('guestbook/setup.php');

$smarty = new Smarty_GuestBook();

$smarty->assign('name','Ned');

$smarty->display('index.tpl');
?>

   

Теперь вы видите, что создать экземпляр Smarty довольно просто - нужно лишь использовать Smarty_GuestBook, который автоматически инициализирует все настройки для нашего приложения.

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors