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