1.Smarty 3:概要


Smartyはアプリケーションから表現層を剥離するツールであり、プログラム論理層(PHP)から外在(HTML/CSS)記述を抽出するPHPフレームワークであるが、SmartyはMVCフレームワークではなく、記述層である(V)にすぎない.
1.Smartyのメリット
  • 速度
  • コンパイル型
  • キャッシュ技術
  • プラグイン技術
  • 強力な表現ロジック
  • テンプレート継承
  • 2.Smartyインストール
  • 公式サイトにSmartyをダウンロード
  • 圧縮パッケージを解凍し、libsフォルダを抽出し、メインプログラムフォルダの下にコピーし、他のフォルダは
  • を使用しません.
  • 実行するPHPスクリプトの中でrequire文を通じてlibsディレクトリの下のSmarty.class.phpクラスファイルが
  • にロードされました
  • Smartyクラスのインスタンス化
  • 
    <?php
        //  Smarty.class.php
        require './libs/Smarty.class.php';
        //   smarty    $smarty
        $smarty = new Smarty();
    

    3.Smarty構成
    重複した構成パスを避けるためには、Smartyを使用するスクリプトごとにファイルを含める独立したバッチ・ファイルに構成するのが一般的です.以下init.inc.php、メインフォルダの下に配置し、Smartyクラスライブラリがあるlibsと同じディレクトリに配置します.
    <?php
    define("ROOT",str_replace("\\","/",dirname(__FILE__)).'/');//        
    require ROOT.'libs/Smarty.class.php';   //  Smarty   
    $smarty = new Smarty(); //   Smarty 
    
    //  Smarty3    , Smarty2     ,  Smarty3   ,      
    $smarty ->setTemplateDir(ROOT.'templates/')  //          
            ->addTemplateDir(ROOT.'templates2/')//          (      )
            ->setCompileDir(ROOT.'templates_c')//            
            ->setPluginsDir(ROOT.'plugins/')    //      
            ->setCacheDir(ROOT.'cache/')    //        
            ->setConfigDir(ROOT.'configs'); //          
    
    $smarty->caching = false;   //    
    $smarty->cache_lifetime=60; //    
    $smarty->left_delimiter="<{";//    
    $smarty->right_delimiter="}>";//