チュートリアル

この節では、STACのインストールからHello Worldの表示までを説明します。


1.STACのダウンロード

このアドレスからSTACをダウンロードします。

2.サーバーへの配置

ダウンロードしたzipファイルを適当なローカルディレクトリに展開し、STACディレクトリごとサーバーへアップロードします。

実行PHPコードからincludeやrequireでアクセスできる場所に置いて下さい。
ここでは/path/to/STACというパスで表現します。

3.テンプレートファイルの配置

以下のようなテンプレートファイルをhello.tplという名前でサーバー上に配置します。

ここでは/path/to/templates/hello.tplというパスで表現します。

hello.tpl

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>STAC-{$hello}!</title>
</head>
<body>
{$hello}
</body>
</html>

ごく普通のHTMLに{$hello}というタグが与えられているだけです。
このタグは「テンプレート変数」で、プログラム側でこの値を設定して動的に表示を変更させることができます。

4.コンパイル後テンプレートファイルの保存先ディレクトリを作成

STACは未コンパイルのテンプレートファイルを読み込むとコンパイルを行い、PHPコードとして出力します。
このコンパイル後のファイルを保存するディレクトリを1つ作成します。

実行PHPコードからincludeやrequireができる場所ならどこでも構いませんが、PHPの実行プロセスからファイルの保存ができるパーミッションにして下さい。
ここでは/path/to/templates_cというパスで表現します。

5.PHPコードの配置

以下のようなPHPファイルをhello.phpという名前でサーバー上に配置します。
ここでは/path/to/public_html/hello.phpというパスで表現します。

hello.tpl

<?php
    require_once('/path/to/STACSTAC.class.php');
    
    $stac = new STAC();
    $stac->template_dir('/path/to/templates');
    $stac->compile_dir('/path/to/templates_c');
    
    $hello = 'Hello World!';
    $stac->assign('hello',$hello);
    $stac->display('hello.tpl');

このコードの$stac->assign('hello',$hello);の部分でテンプレートファイルのテンプレート変数にPHPコード内の$hello変数を割り当てています。

次の$stac->display('hello.tpl');の部分でテンプレートファイルのコンパイル及び出力を行います。

6.実行

Webサーバーを起動し、ブラウザで保存したPHPファイルのURLを入力してアクセスします。
Helloメッセージが正しく表示されれば成功です。

STACはテンプレートファイルの更新確認にファイルのタイムスタンプを使用しています。
PHP5.3以上でデフォルトのロケールが設定されていない環境の場合、警告が表示される可能性がありますので注意して下さい。

また、/path/to/templates_cにコンパイル済みのPHPファイルが出力されていることが確認できます。
次回以降のアクセスは元のテンプレートファイルをコンパイルせずに、このファイルを実行することで出力が行われます。
元のテンプレートファイルが変更されると(タイムスタンプが更新されると)、その次の実行時に再度コンパイル処理が行われます。

以上でSTACのチュートリアルは終わりですが、STACにはテンプレート変数の表示以外にも機能があります。
それぞれの機能についてはリファレンスと、その中のサンプルコードを参照して下さい。