ホームページ > バックエンド開発 > PHPチュートリアル > PHP Web開発MVCフレームワークに基づくSmartyの使い方_PHPチュートリアル

PHP Web開発MVCフレームワークに基づくSmartyの使い方_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:11:41
オリジナル
907 人が閲覧しました

1. Smarty の簡潔なチュートリアル
1. インストールのデモ
最新バージョンの Smarty-3.1.12 をダウンロードし、ダウンロードしたファイルを解凍します。次に、Smarty に付属するデモの例を示します。
(1) ダウンロードアドレス: http://www.smarty.net/download
(2) WEB サーバーのルートディレクトリに新しいディレクトリを作成します。ここでは、/var/www の下に yqting/ ディレクトリを作成します。それを解凍します。 後続のディレクトリにある、demo/ ディレクトリと libs/ ディレクトリが /var/www/yqting/ ディレクトリにコピーされます。
(3) demo/ディレクトリの下のcache/ディレクトリとtemplate_c/ディレクトリに特に注意してください
Chmod 777 queue/
chmod 777 template_c/
(4) apacheを起動します。ブラウザに http://localhost/yqting/demo/index.php と入力すると、簡単な Smarty デモが実装されます。
2.Smarty のディレクトリ構造
(1) /var/www/yqting ディレクトリから分析を開始します:
yqting/
§── デモ
│ §── キャッシュ キャッシュ ファイルの格納ディレクトリ
│ §── configs 設定ファイルディレクトリ
│ til──index.php
│ ├── plugins いくつかの便利なカスタムプラグイン
│ §── templates テンプレートディレクトリ
│ └── templates_c コンパイル済みファイル格納ディレクトリ
└── libs
§── debug .tplデバッグテンプレート
イノラルで前向きにインタンスを取り入れて、smarty.class.php smartyクラス定義ファイルであなたの人々の人々が(2) 独自に定義したプラグインを追加します
上記のディレクトリ構造において、実際にはコア部分は libs/ ディレクトリであり、この部分は変更できません。
独自のプラグインを追加するには、1 つの方法は、独自に定義したプラグインを libs/plugins/ ディレクトリに配置すること、もう 1 つの方法は、独自の plugins/ ディレクトリを作成し、cache/、configs/、も作成することです。 / および templates_c/ ディレクトリを作成し、cache/ ディレクトリと templates_c/ ディレクトリの読み取りおよび書き込み権限を確認します。
実際、上記の例では、demo/ ディレクトリが自己定義のプラグインを含む完全なディレクトリであることを見つけるのは難しくありません。 独自のプログラムを実装するために、demo/ ディレクトリを参照できます。

3. 簡単な例を実装します

(1) /var/www/yqting/ の下に weibo/ ディレクトリを作成し、weibo/ ディレクトリの下に、cache/、configs/、templates/、および templates_c/ ディレクトリを作成し、変更します。キャッシュ / および templates_c/ ディレクトリの権限は読み取りと書き込みです。
(2) 新しいテンプレート ファイルを作成します:index.tpl。このファイルを /var/www/yqting/weibo/templates ディレクトリに配置します。コードは次のとおりです。 metahttp-equiv < /body> 何も理解できなくても、読み続けてください。表示用の各 .tpl ファイルは、ビジネス ロジックを処理する .php ファイルに対応します。この .php ファイルを以下に紹介します。
(3) 新しいindex.phpを作成し、このファイルを/var/www/yqting/weibo/に配置します。 コードは次のとおりです:
display('index. tpl'); ?> で使用されるパスは正しい必要があります。上記のディレクトリ構造を参照してください。
(4) Smarty3では、Smartyクラスのコンストラクタにtemplate_dir、compile_dir、config_dir、cache_dirが指定されており、再度指定する必要はありません。
(5) ブラウザに http://localhost/yqting/weibo/index.php と入力すると、出力情報 username:Smarty が表示されます。

2. Smarty プログラムを説明する

Smarty のプログラム部分が実際には PHP 言語仕様に準拠したコードのセットであることがわかります。
(1) /**/ ステートメント:
インクルード部分 プログラムヘッダのコメントです。主な内容は、プログラムの機能、著作権、作者、執筆時間についての簡単な紹介です。smarty ではこれは必要ありませんが、プログラムのスタイルの観点からは、これは良いスタイルです。
(2) include_once ステートメント:
Web サイトにインストールされている Smarty ファイルを現在のファイルにインクルードします。インクルードされるパスは正しく記述される必要があることに注意してください。
(3)$smarty = new Smarty():
この文は、オブジェクトの単純なインスタンス化である新しい Smarty オブジェクト $smarty を作成します。
(4) $smarty->templates="":
この文は、$smarty オブジェクトがディレクトリである tpl テンプレートを使用する場合のパスを指定します。この文がないと、Smarty のデフォルトのテンプレート パスは現在のディレクトリの templates ディレクトリになります。 、実際にプログラムを書くときは、この文を明確に書く必要がありますが、これも良いプログラミング スタイルです。
(5)$smarty->templates_c="":
この文は、$smarty オブジェクトがコンパイルされるディレクトリを指定します。テンプレート設計の章では、Smarty がコンパイル済みテンプレート言語であり、このディレクトリがテンプレートをコンパイルするディレクトリであることをすでに知っています。サイトが Linux サーバー上にある場合は、teamplates_c で定義されたディレクトリが次のディレクトリであることを確認してください。書き込み可能および読み取り可能なアクセス許可。デフォルトでは、明示的に書き出すのと同じ理由で、そのコンパイル ディレクトリは現在のディレクトリの templates_c です。
(6)Delimiter $smarty->left_delimiter および $smarty->right_delimiter:
テンプレート変数を検索するときに左と右の区切り文字を指定します。デフォルトでは「{」と「}」ですが、実際にはテンプレート内で

人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート