Smarty テンプレート エンジンの概要
1, テンプレート エンジンとは
テンプレート エンジン (ここでは特に Web 開発に使用されるテンプレート エンジンを指します) は、ビジネスデータ (コンテンツ) を分離して生成されるユーザー インターフェイスは、特定の形式のドキュメントを生成でき、Web サイトで使用されるテンプレート エンジンは標準の HTML ドキュメントを生成します。テンプレート エンジンは特定の技術分野に属さず、クロスドメインおよびクロスプラットフォームの概念です。 Asp にもテンプレート エンジンがあり、PHP にもテンプレート エンジンがあり、C# にもテンプレート エンジンがあり、JavaScript や WinForm の開発でもテンプレート エンジン テクノロジが使用されています。テンプレートエンジンのテンプレートは通常のテキストファイルであり、特別な拡張子は必要なく、.html .htm .twig が使用できます。テンプレート内の変数と式は実行時に解析されて置換され、タグによってテンプレートのロジックが制御されます。
2、smarty テンプレート エンジン
Smarty は php テンプレート エンジンです。より正確には、ロジック プログラムと外部コンテンツを分離し、管理しやすい方法を提供します。アプリケーション プログラマー
# とアーティストは、ほとんどの場合、同一人物であることができないため、異なる役割を果たしていると言えます。たとえば、ニュースを閲覧するための Web ページを作成している場合、ニュースのタイトル、タグ
列、作成者、コンテンツはすべてコンテンツ要素であり、それらがどうあるべきかは含まれていません。提示されました。 Smarty のプログラムでは、これらは無視されます。テンプレート デザイナーはテンプレートを編集し、
html タグとテンプレート タグの組み合わせを使用して、これらの要素 (HTML テーブル、背景色、フォント サイズ、スタイル シートなど) の出力をフォーマットします。ある日、プログラマーは記事の検索方法を変更したいと考えました (これも
であり、プログラム ロジックの変更です)。この変更はテンプレートのデザイナーには影響せず、コンテンツは引き続き正確にテンプレートに出力されます。同様に、ある日アーティストがやりすぎてインターフェースを完全にやり直したい場合でも、
プログラム ロジックには影響しません。したがって、プログラマはテンプレートを再構築せずにロジックを変更でき、テンプレート設計者はロジックに影響を与えることなくテンプレートを変更できます。 Smarty はロジックを変換しようとしません
テンプレートから完全に分離します。ロジック プログラムがページの表示のみに使用される場合、テンプレートで問題が発生することはありません。ここでの提案は、アプリケーション ロジックをテンプレートから遠ざけ、ページ プレゼンテーション
ロジックをアプリケーション ロジックから遠ざけることです。これにより、コンテンツの管理が容易になり、将来的にはプログラムのアップグレードが容易になります。
3、smatyエンジンの特徴
テンプレートコンパイル。オーバーヘッドを削減するために、Smarty はデフォルトでテンプレートを同等の PHP スクリプトに変換し、後続の呼び出しを高速化します。 Smarty は非常に賢く、コンテンツが変更された後に再コンパイルすることもできます。 ############キャッシュ。 Smarty は、テンプレートをキャッシュするオプション機能も提供します。キャッシュとコンパイルの違いは、キャッシュをサポートすると、キャッシュされたコンテンツが生成されるだけでなく、個々のロジックの実行が妨げられることです。たとえば、キャッシュされたドキュメントの有効期間 (5 分など) を指定できます。この期間中は、テンプレートに関連するデータベース クエリを無視できます。
高度に構成可能で拡張可能。 Smarty のオブジェクト指向アーキテクチャにより、デフォルトの動作を変更および拡張できます。さらに、構成可能性は当初からの設計目標であり、組み込みのメソッドとプロパティを通じてユーザーが Smarty の動作をカスタマイズできる優れた柔軟性を提供します。 ############安全性。 Smarty は、設計者による意図的または非意図的な破壊からサーバーとアプリケーションのデータを保護するための多くのセキュリティ機能を提供します。