Smartyについて

トップ > 設置の基本 > Smartyについて

目次

Smartyの共通化

PHP Labo で配布しているプログラムには、テンプレートエンジンにSmartyを使用します。Smartyの概要についてはSmartyの利用を参照してください。

Smartyは各プログラムの smarty/ 内に格納されていますが、内容はどのプログラムも同じです。つまり、PHP Labo のプログラムを複数設置する場合、Smartyを使いまわすことにより、サーバーの容量を節約することができます。

Smartyの設置場所は、各プログラム(index.php)のはじめにある

require_once './smarty/Smarty.class.php';

この部分で定義されています。

Smartyを共通化する具体例

まず、設置したいプログラムに付属している smarty/ ディレクトリを、1つ上の階層に移動させます。つまり、

public_html / index.html
     |
     +--  blog / index.php
            |    config.php
            |    error.log
            |    .htaccess
            |
            +-- configs / ~略~
            |
            +-- css / ~略~
            |
            +-- js / ~略~
            |
            +-- templates / ~略~
            |
            +-- templates_c /
            |
            +-- files /
            |
            +-- plugins / ~略~
            |
            +-- smarty / Config_File.class.php
                   |     debug.tpl
                   |     Smarty.class.php
                   |     Smarty_Compiler.class.php
                   |
                   +-- internals / ~略~
                   |
                   +-- plugins / ~略~

このように public_html 直下にプログラムのディレクトリがある場合、

public_html / index.html
     |
     +-- blog / index.php
     |     |    config.php
     |     |    error.log
     |     |    .htaccess
     |     |
     |     +-- configs / ~略~
     |     |
     |     +-- css / ~略~
     |     |
     |     +-- js / ~略~
     |     |
     |     +-- templates / ~略~
     |     |
     |     +-- templates_c /
     |     |
     |     +-- files /
     |     |
     |     +-- plugins / ~略~
     |
     +-- smarty / Config_File.class.php
            |     debug.tpl
            |     Smarty.class.php
            |     Smarty_Compiler.class.php
            |
            +-- internals / ~略~
            |
            +-- plugins / ~略~

このように smarty/ ディレクトリを移動させます。その後、各プログラム(index.php)のはじめにある

require_once './smarty/Smarty.class.php';

この部分のパスを以下のように変更します。

require_once '../smarty/Smarty.class.php';

これで次回からプログラムを設置する場合、

  1. プログラムに付属している smarty/ ディレクトリを削除する。
  2. 各プログラム(index.php)のはじめにあるSmartyの設置場所を変更する。
  3. blog/ と同じ階層に設置する。

という手順で設置することができます。

Smartyのバージョンアップ

各プログラムに付属しているSmartyは最新版でない可能性があります。必要ならば以下の公式サイトから最新版を入手し、プログラムを差し替えてください。

Latest Stable Release から、最新版がダウンロードできます。ファイルはgzip形式(拡張子は tar.gz)で圧縮されていますので解凍ソフトで解凍してください。
解凍ソフトがgzip形式に対応していない場合、Lhacaデラックス版をインストールすれば解凍できます。

解凍すると、demolibs など、複数のファイルとフォルダが作成されます。Smarty本体は libs 内に格納されています。他のファイルはデモや説明書なので使用しません。