Smartyのインストール

メモ:

Smarty を http://smarty.php.net/do_download.php?download_file=Smarty-2.6.6.tar.gz から入手します。

最新版は、 Smarty のホームページから入手します。

インストール

入手したアーカイブを /usr/local/src に置き展開します。

# tar zxvf Smarty-X.X.X.tar.bz2

展開されたファイルのうちlibs以下のファイルをコピー又は移動します。(phpがあらかじめインストールされている前提です。)

# cd Smarty-X.X.X
# mv libs /usr/local/lib/php/smarty

php.iniにSmartyのパスを追加します。

php.iniは、/usr/local/libにあります。

# vi php.ini

include_path = ".:/usr/local/lib/php/smarty"

以上で、インストールは終わりです。

Apacheを再起動し、変更を反映します。

動作確認

Smartを展開したファイルの中にdemoディレクトリが存在します。

このdemoディレクトリにあるファイルを使用して確認をしてみます。

私の場合、ApacheのDocumentRootをホームページの管理ユーザーのディレクトリに設定しているので、そこを利用したいと思います。

$ cp -r demo /home/管理ユーザー/htdocs/
$ mkdir cache

templates_cとcacheはApacheで使用するユーザーが書き込める必要があるのでオーナーを変更します。(ユーザーやグループを確認するには、Apacheのhttpd.confを確認します。)

$ cd /home/管理ユーザー/htdocs/demo/
$ chown nobody:nogroup templates_c
$ chown nobody:nogroup cache

よりセキュリティーを意識するならパーミッションを770に設定します。(注:実際の運用の場合、templates等のディレクトリはDocumentRootの外に配置するほうがセキュリティー上良いようです。)

例:/home/管理ユーザー/templates等

demoディレクトリのindex.phpを修正します。

$ vi index.php

require ‘../libs/Smarty.class.php’の部分をrequire ‘Smarty.class.php’へ変更します。

これで設定は終了です。ブラウザーで確認し以下のように表示されれば成功です。

Title: Welcome To Smarty!

The current date and time is 2005-01-19 19:09:26

Tooltip example: Move your mouse over the Help link to see an example of a tooltip using Smarty's popup function.

The value of global assigned variable $SCRIPT_NAME is /demo/index.php

Example of accessing server environment variable SERVER_NAME: air.tic.net

The value of {$Name} is Fred Irving Johnathan Bradley Peppergill

variable modifier example of {$Name|upper}

FRED IRVING JOHNATHAN BRADLEY PEPPERGILL


An example of a section loop:

1 * John Doe
2 * Mary Smith
3 . James Johnson
4 . Henry Case

An example of section looped key values:

phone: 1
fax: 2
cell: 3
phone: 555-4444
fax: 555-3333
cell: 760-1234


testing strip tags
This is a test