ホームページ  >  記事  >  バックエンド開発  >  Smarty での php 組み込み関数の呼び出し

Smarty での php 組み込み関数の呼び出し

WBOY
WBOYオリジナル
2016-06-23 13:20:541280ブラウズ

CleverCode は、smarty での php 組み込み関数の呼び出しが | を通じて実現できることを発見しました。 |前後にスペースは入れません。数を求める配列の場合は@を付ける必要があります。

パラメータが 1 つの場合:
{{'param1'|functionName}}
例:
{{$tmpStr|strlen}}

パラメータが 2 つの場合:
{{'param1'|functionName:'param2' }}
{$tmpStr|substr:'1'}

パラメータが複数ある場合:
{{'param1'|functionName:'param2':'param3'..}}
{{$tmpStr|substr:' 1':' 2'}}

{{'a'|str_replace:'A':$tmpStr}}


1 marty が空かどうかを決定します
次のコード php は、空である場合、または tmpStr に割り当てます割り当てられていない場合、smarty は 0 を出力します。これは PHP の組み込み関数 strlen を呼び出します
php コード:
$smarty->assign('tmpStr','');

smarty コード:
{{if $tmpStr|strlen >
1
{ {else}}
0
{{/if}}

2 marty は配列の長さを見つけます
PHP の組み込み関数 is_array と count を使用して配列の長さを見つけます。 次のコードは 5
php コードを出力します。
$smarty-> ;assign('tmpArr',array(1,2,3,4,5));


smarty コード:

{{if $tmpArr|is_array && $tmpArr|@count > 0}}

{ {$tmpArr|@count}}
{{else}}
0

{{/if}}


3 marty 文字列の置換 次のコードは、tmpStr の b を c

$ に置き換えます。 Smarty-> ;assign('tmpStr','abb');
{{'b'|str_replace:'c':$tmpStr}}

出力: acc


4 marty インターセプト フィールド $smarty-> assign(' tmpStr','abb');


{{$tmpStr|substr:'1'}}
出力:bb

{{$tmpStr|substr:'1':'1'}}
出力: b
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。