この記事では、ThinkPHP の テンプレート エンジン を最大限に効率化する方法を主に紹介し、thinkPHP テンプレート エンジンの使用方法と、それを必要とするオリジナルの php 構文 を使用する際の効率の問題について詳しく分析します。この記事を参照してください
この記事では、ThinkPHP のテンプレート エンジンの最高の効率を達成する方法を分析します。参考のために皆さんと共有してください。詳細は次のとおりです:
デフォルトでは、ThinkPHP フレームワークシステムによって使用されるテンプレート エンジンは、デフォルトで組み込みのテンプレート エンジンです。組み込みのテンプレート エンジンは、テンプレート ファイル内での PHP ネイティブ コードと テンプレート タグ の混合使用をサポートしています。
ThinkPHP の公式開発ドキュメントには、このデフォルトの組み込みテンプレート エンジンのパフォーマンスは効率的ですが、最適ではありません。テンプレートエンジンの最適なパフォーマンスを実現するには、PHP自体をテンプレートエンジンとして使用する必要があります。
PHP 自体をテンプレート エンジンとして使用するのは、実際には非常に簡単です。プロジェクトの 設定ファイルConf/config.php:
'TMPL_ENGINE_TYPE' =>'PHP'
で設定するだけで済みます。テンプレート ファイル内で使用することはできなくなり、システムがデフォルトで使用するテンプレート エンジンのテンプレート タグを使用できるようになります。オリジナルの PHP コードのみを使用できます。
以下では、例を使用して、PHP 自体をテンプレート エンジンとして使用した後、テンプレート上で PHP コードを操作する方法を示します。
wblog3.1.2_3 ブログ プログラムをダウンロードしてインストールします (独自のプロジェクトを構築することもできます)
最初にプロジェクト W3noteConfconfig.php ファイルを構成して構成項目を追加します:
次にコントローラー W3noteLibActionIndexAction.class.php を追加しますおよび対応するテンプレート W3noteTplIndexindex.html のコードは、さまざまなデバッグ目的のためにクリアされます。
基本的な作業は完了しました。次はデバッグ記録です:
1. テンプレートで php オリジナルのエコロジー コードを使用します
IndexAction.class.php コントローラー コード
<?php class IndexAction extends Action { public function index(){ $this->display(); } }
index.html テンプレート コード :
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>使用原生态的php代码</title> </head> <body> <?php $title= '网志博客'; echo $title;//输出变量 ?> </body> </html>
出力:
$title='网志博客'; echo $title;
テンプレートの「bb9bd6d87db7f8730c53cb084e6b4d2d」を 453490439c74a929a2834bf146aa58a45c6c8f72abb80ea0f248b656fc7e404b に置き換えると、結果は変数を説明できず、453490439c74a929a2834bf146aa58a4< ではないことを示します。 /php> タグがサポートされています。
2. queryステートメントをテンプレート上で直接使用します
コントローラーのコードは1と同じで、テンプレートのコードは次のとおりです
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>使用原生态的php代码</title> </head> <body> <?php $vo=M('News')->find(); echo $vo['title']; ?> </body> </html>
出力:
欢迎使用WBlog博客程序
コントローラーは何も実行していないように見えます脇に置いておきますが、テンプレート上ではこんな風に書くこともできるので、とても柔軟です!
3. テンプレート上のコントローラーによって割り当てられたクエリ結果を呼び出します
IndexAction.class.php コントローラー コード
<?php class IndexAction extends Action { public function index(){ $vo=M('News')->find(); $this->assign('vo', $vo); $this->display(); } }
template Index.html コード
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>使用原生态的php代码</title> </head> <body> <?php echo $vo['title']; ?> </body> </html>
出力:
欢迎使用WBlog博客程序
この場合、システムはそれを使用しますデフォルトでは、テンプレート エンジンに関しても記述方法は変わりません。
4. テンプレート上のプロジェクト関数ライブラリ関数を呼び出します
コントローラーコードは1と同じで、テンプレートコードは次のとおりです
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>使用原生态的php代码</title> </head> <body> <?php echo pwdHash('abc');//调用项目\W3note\Common\common.php函数库的加密函数pwdHash() ?> </body> </html>
出力:
af10ef457ed637b91955369297b8e640
システムデフォルトテンプレートのラベルを破棄しましたエンジンは(比較的に)不器用です。構文、関数呼び出しはとても簡単です。
概要: ThinkPHP で PHP 自体をテンプレート エンジンとして使用すると、テンプレート エンジンのパフォーマンスを最大化できます。テンプレートの記述方法はより活発になりますが、システムのデフォルトのテンプレート エンジンが使用されます。テンプレート ラベルは効果がありません。
以上がThinkPHP のテンプレート エンジンを最適な効率で実現する方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。