PHP を使用して大規模なインタラクティブな Web サイトを開発する場合、アーティストとどのように協力するかという問題によく遭遇します。通常、私たちの解決策はアーティストにページをデザインしてもらい、それを開発のためにプログラマーに渡すことです。その後、アーティストにページを改善する作業を何度か繰り返します。プログラマーが HTML に慣れていない場合、この作業は双方にとって大変な作業となり、効率が非常に低くなります。テンプレートのサポートがあることが重要です。
私たちは、オープン ソース コミュニティのメンバーとして、PHP 言語が FastTemplate、Smarty、SimpleTemplate などのさまざまなテンプレート エンジンを提供していることを知っています。今日、Smarty は最も一般的に使用されている PHP テンプレート エンジンです。 PHP 開発で共有する Smarty のインストール方法と使用方法は、Smarty の入門と言えます。
準備
1. Smarty がインストールされているディレクトリを選択します
サーバー権限がある場合は、セキュリティを考慮して、Web プログラム ドキュメント ディレクトリの外に Smarty をインストールすることを選択し、PHP.INI ファイルの include_path オプションに Smarty インストール ディレクトリのアドレスを含めることができます。
仮想ホスト機関または複数のプロジェクトの場合、Smarty をそれぞれのプロジェクト ディレクトリにインストールでき、必要な Smarty クラス ファイルで Smarty テンプレート エンジンを使用することもできます。もちろん、セキュリティ上の理由から、Apache を介した関連ディレクトリへのアクセスを禁止することもできます。
さらに、2 つの Smarty インストール方法は移植性の点で異なります。最初の方法は各サーバーが同じ Smarty 構成であることを確認する必要がありますが、2 番目の方法は各サーバーの構成に影響を与えません。 Smarty のインストール方法は、必要に応じて選択できます。
2. Smarty をダウンロードします。Smarty をダウンロードするにはここをクリックしてください。私は Smarty-2.6.25 を選択しました。
Smarty のインストール手順
1. ダウンロードした Smarty-2.6.25 圧縮パッケージを解凍します
2. libs フォルダーを WEB プログラム ディレクトリにコピーします。私のディレクトリは testmarty
です。Linuxでのインストール方法はこちらを参照してください。
Smarty テンプレートをインストールした後、Smarty を簡単に使い始めました。
賢い使い方
1. 関連するディレクトリを作成します
Smarty は、Smarty の使用中にコンパイル済みのテンプレート ファイル、その他の設定ファイル、キャッシュ ファイルを生成するため、関連するディレクトリを作成する必要があります。 testmarty ディレクトリ内に別の tpls ディレクトリを作成し、tpls ディレクトリ内にテンプレート、templates_c、configs、およびキャッシュ ディレクトリを作成しました。なぜこれらのディレクトリを作成する必要があるのでしょうか? Smarty.class.php ファイルを開くと、Smarty クラスがいくつかのメンバー属性を定義していることがわかります。
$template_dir: すべてのテンプレート ファイルを配置する必要があるディレクトリ アドレスを設定します。デフォルトでは、ディレクトリは「./templates」です。つまり、テンプレート ディレクトリは PHP 実行プログラムと同じディレクトリにあります。
$compile_dir: Smarty がコンパイルしたすべてのテンプレート ファイルの格納ディレクトリ アドレスを設定します。デフォルトのディレクトリは「./templates_c」です。つまり、コンパイル ディレクトリは PHP 実行プログラムと同じディレクトリにあります。 Linux サーバー上にこのディレクトリを作成する場合は、書き込み権限を持つようにこのディレクトリの権限を変更する必要もあります。
$config_dir: テンプレートの特別な設定ファイルを保存するために使用するディレクトリを設定します。デフォルトのディレクトリは「./configs」です。つまり、設定ディレクトリは PHP と同じディレクトリにあります。実行プログラム。
$cache_dir: キャッシュ機能が有効な場合、Smarty によってキャッシュされたすべてのテンプレートは、この属性で指定されたディレクトリに配置されます。デフォルトのディレクトリは「./cache」です。つまり、キャッシュ ディレクトリは PHP 実行プログラムと同じディレクトリにあります。独自のカスタム キャッシュ ハンドラーを使用して、この設定を無視してキャッシュされたファイルを制御することもできます。同様に、このディレクトリを Linux サーバー上に作成する場合は、書き込み権限を持つようにこのディレクトリの権限を変更する必要もあります。
システムのセキュリティと移植性のため、これらのディレクトリを PHP 実行可能プログラムと同じディレクトリに作成しないことをお勧めします。同じディレクトリに作成されている場合は、PHP 実行可能プログラムのディレクトリの外に作成できます。 PHP 実行可能プログラムとして使用できる Apache は、ディレクトリへのアクセスを適切に制限します。
2. 関連する構成ファイルを作成します
Smarty クラスのデフォルトのメンバー属性をオーバーライドする構成ファイルを作成し、main.php という名前を付けて、Smarty ディレクトリに保存する必要があります。今後 Smarty を使用する必要があるスクリプトを含めるだけです。 main.php。
1 |
|
コメント :
1~8行目:主にsmartyオブジェクトを定義し、テンプレートファイル、コンパイル済みファイル、キャッシュファイル、設定ファイルの保存ディレクトリを設定し、Smarty.class.phpのデフォルト値をオーバーライドします。
行 9 ~ 10: キャッシュを有効にし、キャッシュの有効期間を 1 日に設定します。
知識ポイント: $caching は、キャッシュ機能を有効にするかどうかを設定するために使用されます。デフォルト値は 0 または無効に設定されています。同じテンプレートに複数のキャッシュを設定し、値が 1 または 2 のときにキャッシュを有効にすることもできます。 1 は、現在の $cache_lifetime 変数を使用してキャッシュの有効期限が切れているかどうかを判断するように Smarty に指示します。 2 は、キャッシュを生成するときに、cache_lifetime 値を使用するように Smarty に指示します。プロジェクト開発中はキャッシュをオフにし、値を 0
行 11 ~ 12: Smarty 言語の左右のターミネータを設定します。中括弧が Smarty のデフォルトの区切り文字であることはわかっていますが、JavaScript や CSS などと組み合わせると競合する可能性があるため、ここでは < に設定します。 🎜>。 <{和}>
3. テンプレートファイルを作成します通常の状況では、アート ページのデザイン後、両者の交差点がテンプレート ファイルになるため、プログラマーはフロント デスクで多大な労力を費やす必要がなくなります。開発に Smarty テンプレート エンジンを使用する方法について説明します。
まず、leapsoul.tpl という名前の単純なテンプレート ファイルを作成します。HTML ファイルに Smarty 変数を追加し、ファイルを tpl タイプのファイルとして保存できます。
1
456 78 910 11
| <html> <頭> <meta http-equiv="コンテンツ タイプ" content="text/html; charset=gb2312"> <タイトル> <{ $title } > タイトル> 頭> <本文> <{ $content } > 本文> html> |
メモ: タイトルとコンテンツという 2 つの Smarty 変数がこの tpl ファイルに設定され、ファイルは Leapsoul.tpl として保存され、testsmartytplstemplates テンプレート ファイル ディレクトリにも保存されます。
4. アプリケーション ファイルを作成します
テンプレート ファイルはプレゼンテーション レイヤーに似ています。テンプレート ファイルを作成したら、プレゼンテーション レイヤーを駆動するアプリケーションが必要になります。アプリケーション ファイルは、smarty.php として定義されます。
123456789 | <🎜> インクルード("smarty/main.php");<🎜> <🎜> $tpl->割り当て ("title", "leapsoul.cn はスマートなテンプレートを示しています。 "); $tpl->割り当て ("content"、 "leapsoul.cn は詳細なインストールを通じて使用されます)この手順では、スマートなテンプレート テクノロジーを示します。"); $tpl->表示 ("leapsoul.tpl"); ?> |
コメント :
このコードでは、smarty で主に assign と display の 2 つの関数を使用します。assign は変数に値を代入するものであり、display は主に Web ページを出力するために使用されます。今後さらにスマートな機能が詳しく紹介される予定です。
その他の指示
キャッシュ機能を有効にしているので、興味のある友達はキャッシュと templates_c を開くことができます。キャッシュ ディレクトリには、このテンプレートのキャッシュ ファイルが保存されています。ファイルの先頭には、ファイルの生成時間や有効期限などのキャッシュ情報があります。 , など、その他は通常の HTML ファイルと大きな違いはなく、templates_c にはテンプレートをコンパイルした PHP 実行ファイルが格納されます。
この時点で、Smarty テンプレートのアプリケーション例の簡単な紹介が完了しました。
注意: PHP Web サイト開発チュートリアル-leapsoul.cn 転載の際は、元のソースとこの記述をリンクの形で明記してください。