Maison  >  Article  >  développement back-end  >  Exemple de partage sur la façon d'appeler les fonctions intégrées PHP dans Smarty

Exemple de partage sur la façon d'appeler les fonctions intégrées PHP dans Smarty

黄舟
黄舟original
2017-07-17 15:38:141424parcourir

CleverCode a découvert que l'appel des fonctions intégrées php dans smarty peut être réalisé via |. |Aucun espace avant et après. S'il s'agit d'un tableau pour trouver le nombre, vous devez ajouter @.

Avec 1 paramètre :

{{'param1'|functionName}}

Par exemple,

{{$tmpStr|
strlen
}}

avec 2 paramètres :

{{'param1'|functionName:'param2'}}
{$tmpStr|substr:'1'}

Quand il y a plusieurs paramètres :

{{'param1'|functionName:'param2':'param3'..}} 
{{$tmpStr|substr:'1':'2'}}
{{'a'|str_replace:'A':$tmpStr}}

1 marty détermine s'il est vide

Le code suivant que php attribue à tmpStr s'il est vide ou non attribué, alors smarty génère 0. Cela appelle la fonction intégrée strlen de PHP
code php:

$smarty->assign('tmpStr','');
smarty代码:
{{if $tmpStr|strlen > 0 }}
    1
{{else}}
    0
{{/if}}

2 marty trouve la longueur du tableau


Obtenez la longueur du tableau via les fonctions intégrées de PHP is_array et count Le code suivant génère 5
code php :

$smarty->assign('tmpArr',array(1,2,3,4,5));

code intelligent :

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

3 martyStringRemplacement

Le code suivant remplace b dans tmpStr par c


$smarty->assign('tmpStr','abb');
{{'b'|str_replace:'c':$tmpStr}}
Sortie :

acc

4 champs d'interception Marty

$smarty->assign('tmpStr','abb');
{{$tmpStr|substr:'1'}}
Sortie :

bb
{{$tmpStr|substr:'1':'1'}}
Sortie :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn