Maison >php教程 >PHP开发 >Explication détaillée de l'utilisation du médiateur de variables intégré du moteur de modèles PHP Smarty

Explication détaillée de l'utilisation du médiateur de variables intégré du moteur de modèles PHP Smarty

高洛峰
高洛峰original
2016-12-27 16:00:491224parcourir

L'exemple de cet article décrit l'utilisation du médiateur de variables intégré du moteur de modèles PHP Smarty. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

Le médiateur variable dans Smarty est équivalent à une fonction. La méthode d'appel est : directement suivie du nom de la fonction médiateur via "|". sont des paramètres, ils doivent être ajoutés. Après ":", s'il y a plusieurs paramètres, additionnez-les simplement.

Ce qui suit vous présente le médiateur de variable intégré dans Smarty :

1. mettre en majuscule

Mettre en majuscule la première lettre de tous les mots de la variable. La valeur du paramètre est un type booléen qui détermine si le premier mot d'un mot contenant des nombres est en majuscule. La majuscule par défaut n'est pas mise en majuscule

index.php

$tpl->assign('str', 'hello world wor2ld!!!');
$tpl->display('index.html');

index.html (fichier modèle)

<{$str|capitalize}>
<{$str|capitalize:true}>

Le résultat est : Hello World wor2ld !!!, Bonjour World Wor2Ld !!!

2. count_characters

compte le nombre de caractères dans la variable Par défaut, le médiateur ne compte pas les espaces (espaces, tabulations, retours chariot...) et ne compte que le nombre de caractères. Et il peut très bien prendre en charge le calcul des caractères chinois ; si le paramètre true est ajouté, les espaces seront calculés.

index.html

<{$str|count_characters}> // 不计算空格
<{$str|count_characters:true}> // 计算空格

Les résultats sont : 13, 14

3, cat

chaîne de connexion, connectez la valeur dans cat à après la variable donnée.

<{$str|cat:&#39; Happy new year.&#39;}>

Le résultat est : bonjour tout le monde !!! Bonne année.

4. count_paragraphs

Calculer le nombre de paragraphes , calcule le nombre de paragraphes dans la variable et prend parfaitement en charge les paragraphes chinois.

index.php

$str = <<assign(&#39;str&#39;, $str);
$tpl->display(&#39;index.html&#39;);

index.html

<{$str|count_paragraphs}>

Le résultat est : 3

5. count_sentences

Comptez le nombre de phrases et comptez le nombre de phrases dans la variable. Remarque : seules les phrases en anglais sont prises en charge, le chinois n'est pas pris en charge.

index.php

$str = <<assign(&#39;str&#39;, $str);

index.html

   
<{$str|count_sentences}>

Le résultat est : 2

6. count_words

Calculez le nombre de mots et comptez le nombre de mots dans la variable.

index.php

$str = <<assign(&#39;str&#39;, $str);

index.html

<{$str|count_words}>

Le résultat est : 12

7. date_format

Format de la date, il existe de nombreux paramètres spécifiques, voici uniquement des exemples de format de date chinois

index.php

$tpl->assign(&#39;date&#39;, time()); // 传递时间戳

index.html

<{$date|date_format:&#39;%Y-%m-%d %H:%M:%S&#39;}>

Le résultat est : 2012 -01-26 14:37:22

8. par défaut

Par défaut, définissez une valeur par défaut pour une variable vide Lorsque la variable est vide ou non allouée, la valeur par défaut donnée sera affichée. plutôt.

index.php

$tpl->assign(&#39;str&#39;, &#39;&#39;); // 赋值给空

index.html

<{$str|default:&#39;默认输出...&#39;}>、<{$string|default:&#39;没有定义,默认输出...&#39;}>

Le résultat est : sortie par défaut..., pas de définition, sortie par défaut...

9. escape

transcodage, utilisé pour le transcodage html, le transcodage d'url, dans Convert single guillemets sur les variables sans transcodage, transcodage hexadécimal, embellissement hexadécimal ou transcodage javascript. La valeur par défaut est le transcodage html

index.php

$html = <<Google
html;
$js = <<
  for (var i=0; i<100; i++) {
    window.alert(i);
  }
js;
$tpl->assign(&#39;html&#39;, $html); // html
$tpl->assign(&#39;url&#39;, &#39;http://www.google.com.hk&#39;); // url
$tpl->assign(&#39;js&#39;, $js); // javascript

index.html

HTML 转码:<{$html|escape:"html"}>
URL 转码:<{$url|escape:"url"}>
JS 转码:<{$js|escape:"javascript"}>

Le résultat est :

HTML 转码:Google
URL 转码:http%3A%2F%2Fwww.google.com.hk
JS 转码:

10. indent

indent, chaque ligne indente une chaîne, le premier paramètre spécifie le nombre de chaînes à indenter, la valeur par défaut est de quatre caractères ; le deuxième paramètre, spécifie le caractère à utiliser pour remplacer l'indentation.

11. minuscule

minuscule, minuscule la chaîne variable.

Utilisation : 750a9f85df50488af5b1b9f9539cd4b5

12. majuscule

majuscule, changez la variable en majuscule.

Utilisation : 98cba6331cf99290e107dcab961d573a

13. nl2br

les sauts de ligne sont remplacés par

tous les sauts de ligne seront Remplacer avec, la même chose que la fonction nl2br() de php.

14. regex_replace

Remplacement régulier, rechercher et remplacer des expressions régulières, la syntaxe est la même que preg_replace().

index.php

$tpl->assign(&#39;str&#39;, &#39;http://www.google.com&#39;);

index.html

<{$str|regex_replace:&#39;/go{2}gle/&#39;:&#39;baidu&#39;}>

Le résultat est : http://www.baidu.com

15. remplacer

Remplacer, rechercher et remplacer simplement la chaîne.

16. spacify

Insérer un espace. Insérer un espace (je ne sais pas ce que ce mot signifie, comme son nom l'indique ^^). entre chaque caractère d'un caractère de chaîne (string).

index.php

$tpl->assign(&#39;str&#39;, &#39;hello world!!!&#39;);

index.html

<{$str|spacify:"^^"}>

Le résultat est : h^^e^^l^^l^^o^^ ^^w^^o^^r^^l^^d^^!^^!^^!

17. string_format

Le formatage de chaîne est une méthode de formatage des nombres à virgule flottante, tels que les nombres décimaux, utilisez la syntaxe sprintf pour formater.

index.php

$tpl->assign(&#39;num&#39;, 23.5787446);

index.html

<{$num|string_format:"%.2f"}>
<{$num|string_format:"%d"}>

Les résultats sont : 23.58, 23

18, strip

Remplacez tous les espaces, nouvelles lignes et tabulations répétés par un seul

index.php

$tpl->assign(&#39;str&#39;, "Grandmother of\neight makes\t  hole in one.");

index.html

<{$str|strip:" "}>

Le résultat est : Grand-mère de huit trous fait en un.

Code source :

Grand-mère de huit enfants fait un trou en un.

19. strip_tags

Supprimez tous les caractères entre 55016b4a1a24455630af9004056dfbc6.

index.php

$tpl->assign(&#39;str&#39;, "Google");

index.html

<{$str|strip_tags}>

Le résultat est : Google (le code source est également Google, avec les balises et les balises supprimées)

20, tronquer

截取,截取字符串开始的一段.默认是80个,你可以指定第二个参数作为在截取的那段字符串后加上什么字符,默认情况下,smarty会截取到一个词的末尾,如果你想要精确的截取多少个字符,把第三个参数改为"true" 。

index.php

$tpl->assign(&#39;str&#39;, &#39;从前有座山,山上有座庙。庙里有一个老和尚和一个小和尚...&#39;);

index.html

<{$str|truncate:10:&#39;...&#39;:true}>

   

结果为:从前有座山,山...

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

更多PHP模板引擎Smarty内置变量调解器用法详解相关文章请关注PHP中文网!

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