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 > 0 }} 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
以上就是php内置函数如何在smarty中调用的实例分享的详细内容。
