ディレクトリ構成
Smartyを使ったアプリケーションではデザインとプログラムを分けることが出来るのが特徴です。その為、作成するファイルもプログラム部分となるPHPファイルとデザイン部分となるテンプレートに大きく分かれます。
プログラム部分
プログラムを記述するファイルは利用者がブラウザ経由でアクセスするファイルとなります。その為、ApacheなどのWebサーバ経由でアクセス可能な場所に配置されなければなりません。今後はプログラム関連のファイルに関してはApacheのドキュメントルート配下にディレクトリを作成して配置することとします。(エイリアスを使って外部に作成しても構いません)。
「htdocs」の下に「smarty」と言うディレクトリを作成しました。今後作成するアプリケーション毎にディレクトリを作成してファイルを配置していきます。今回作成するアプリケーション用に「hello」と言うディレクトリを作成しました。このディレクトリの中にプログラム関係のファイルを配置します。
デザイン部分
デザイン部分に該等するテンプレートファイルはプログラムファイル内に記述されたSmartyライブラリからのみアクセスされます。その為、Webサーバのドキュメントルート配下に設置する必要はありません。
今回「D:¥smartysample」と言うディレクトリを作成しました。今後作成するアプリケーション毎にディレクトリを作成していてファイルを配置していきます。今回作成するアプリケーション用に「hello」と言うディレクトリを作成しました。
アプリケーション毎にディレクトリを作成したら4つのディレクトリを作成します。
templates テンプレートファイル設置 templates_c コンパイルしたテンプレート設置 configs コンフィグファイル設置 cache キャッシュ
作成したテンプレートファイルは「templates」ディレクトリに設置します。また設定ファイルは「configs」ディレクトリに設置します。
「templates_c」ディレクトリには最初にテンプレートが利用された時にテンプレートををPHPファイルに変換したファイルをSmartyが設置します。「cache」ディレクトリはキャッシュを有効にしている場合に、最終形であるHTMLファイルをSmartyがキャッシュします。
※Windows環境では関係ありませんが「templates_c」ディレクトリと「cache」ディレクトリはSmartyが書き込みを行うディレクトリですのでWebサーバーのユーザーに対して書き込み権限が必要です。
( Written by Tatsuo Ikura )