php Smarty テンプレートには、デフォルトでいくつかの単純な変数処理関数が付属しています。基本的にはWeb開発におけるほとんどのニーズに対応できますが、実際の開発ではこれらの基本機能では満たせない機能も必ず存在します。たとえば、テンプレートのデフォルト関数には、文字列内の単語数をカウントする関数がありません。このような場合は、smarty テンプレート プラグイン機能を開発するほかに、php 関数を直接使用するのが最も簡単な方法です。さらに、私たちのニーズでは、テンプレート内で変数を複数回処理する必要がある状況によく遭遇します。これは、変数をテンプレート内の複数の関数で処理する必要がある可能性があることを意味します。これらのやり方を知っていますか? 2つの例を挙げて簡単に説明しましょう。
(1) Smarty テンプレートで php 関数を使用します。ここでは、配列の長さを計算する必要があると想定されています。長さが 6 より大きい場合は、ループで表示されます。それ以外の場合は、何も処理されません。次に:
{if $array|@count gt 6}
{foreach from=$array item=arr}
...
{/foreach}
{/if}
(2) Smarty テンプレート内の同じ変数に対して複数の関数を使用する 最初に変数を固定長でインターセプトし、次にキーワードを置き換えて強調表示したいとします。
{$str|truncate:30:'...'|replace:$keyword:"$keyword"}OK、smarty テンプレートで php 関数を使用したり、smarty テンプレートの同じ変数に対して複数の関数を使用したりするのはとても簡単です。 興味がありそうな記事