この記事では、PHP テンプレート エンジン Smarty カスタム変数メディエーターの使用方法について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
PHP には、テキストを処理するための関数が多数あります。関数を通じて処理対象のテキストを処理し、Smarty テンプレート エンジンの assign() を呼び出して値を変数に割り当て、それを表示用のテンプレートに割り当てることができます。 。
Smarty の変数メディエーターは PHP のテキスト処理関数に似ていますが、構文が異なります。Smarty では、パラメーターがある場合は、"|" を介してメディエーター関数名を直接続けます。 :"。パラメータが複数ある場合は、それらを合計してください。
形式: {$var|modifier1:"Parameter1":"Parameter2":Parameter3|modifier2|modifier3|...}
メディエーターを定義するファイルは Smarty に配置する必要があります。具体的なパスは libs/plugins/ です。ファイル名は Smarty 形式である必要があります modifier.mediatorname.php
以下は、Smarty でのカスタム変数メディエーターの使用例を示しています
プログラミングのアイデア: 2 つの変数メディエーターを作成します。機能は次のとおりです。1 つはテキストを変換し、もう 1 つはテキストをインターセプトします。
init.inc.php (Smarty 初期化ファイル)
リーリーindex.php(メインファイル)
リーリーtpl/index.tpl
リーリー/libs/plugins/modifier.transform.php (変換ファイル修飾子)
リーリーlib/plugins/modifier.subString.php (インターセプトテキスト修飾子)
リーリー実行結果:
上記の例を通じて、作成したメディエーター関数を呼び出すことができるように、メディエーター ファイルは Smarty のプラグイン ディレクトリ plugins に配置する必要があり、命名は Smarty のルールに従う必要があることが示されています。もう 1 つの注意点は、定義された関数名は Smarty のデフォルトの命名規則 (例:smarty_modifier_XXX) にも準拠する必要があり、モディファイア ファイルには複数の関数ではなく 1 つの関数のみを含めることができるということです。
それでは、まずカスタム メディエーターを紹介しましょう。Smarty で記述されたメディエーター関数が多数あります。これらは直接呼び出したり、好みのスタイルに変更したりできます。 Smary の組み込みメディエーターについては、次の章で詳しく紹介します。
さらに PHP 関連のコンテンツに興味のある読者は、このサイトの特別トピックをチェックしてください: 「Smarty テンプレートを使い始めるための基本チュートリアル」、「PHP テンプレート テクノロジの概要」、「PDO に基づく PHP データベース操作スキルの概要」 "、"PHP の操作とオペレーターの使用法の概要"、"PHP ネットワーク プログラミング スキルの概要"、"PHP 基本構文の入門チュートリアル"、"PHP オブジェクト指向プログラミングの入門チュートリアル"、"PHP 文字列の使用法の概要"、 『PHP+MySQLデータベース操作入門チュートリアル』と『PHPにおける一般的なデータベース操作スキルのまとめ』
この記事が、Smarty テンプレートに基づいた皆様の PHP プログラム設計に役立つことを願っています。