Maison  >  Article  >  développement back-end  >  Comment les modèles Smarty utilisent les régulateurs variables

Comment les modèles Smarty utilisent les régulateurs variables

*文
*文original
2018-01-02 09:54:531324parcourir

Cet article présente principalement l'utilisation du régulateur de variable du modèle Smarty et analyse plus en détail la fonction et les compétences d'utilisation spécifiques du régulateur de variable du modèle Smarty. Les amis dans le besoin peuvent s'y référer. J'espère que cela aide tout le monde.

Les détails sont les suivants :

Dans smarty, comment modifier le texte et les variables ? Bien sûr, vous pouvez traiter le texte via la fonction PHP, puis l'attribuer au modèle via la méthode assign(). En fait, smarty fournit un régulateur de variable pour traiter facilement le texte :

.

{$ var|modifier1|modifier2|modifier3|…}

Remarque : 1. Quel que soit le nombre de fonctions appliquées, elles doivent être séparées par |.

Remarque : 2. Les paramètres sont utilisés ":" séparés, tels que :

{$str|truncate:40:"..."}
//截取字符串长度为40,并以...结尾。

Fonction de médiation variable couramment utilisée dans les modèles Smarty

. La valeur par défaut est le transcodage HTML

Nom de la méthode membre

Description

capitaliser

Capitaliser la première lettre de tous les mots de la variable, paramètres La valeur booléenne détermine si le premier caractère du mot avec des chiffres

est en majuscule. La valeur par défaut n'est pas en majuscule

count_characters

Calculez le nombre de caractères dans la valeur de la variable. La valeur du paramètre booléen détermine s'il faut compter

espaces. Par défaut, les espaces sont. pas compté

cat

Connectez la valeur du paramètre dans cat à la variable donnée, la valeur par défaut est vide

count_paragraphs

Compter le nombre de paragraphes dans la variable

count_sentences

Comptez le nombre de phrases dans la variable

count_words

Comptez le nombre de mots dans la variable

date_format

Format de la date, le premier paramètre contrôle le format de la date. Si les données transmises à date_format

sont vides, le deuxième paramètre sera utilisé comme heure par défaut

par défaut

Définissez une valeur par défaut pour une variable vide Lorsque la variable est vide ou non attribuée,

Remplacez. la sortie par la valeur par défaut donnée, le transcodage d'URL, la conversion de guillemets simples, le transcodage hexadécimal

, l'embellissement hexadécimal ou le transcodage JavaScript sur des variables qui ne sont pas transcodées.

indent

Indent la chaîne dans chaque ligne, Le le premier paramètre spécifie le nombre de caractères à mettre en retrait,

est par défaut de quatre caractères ; le deuxième paramètre spécifie le caractère à utiliser pour l'indentation au lieu de

.

inférieur

Minuscule la chaîne variable

nl2br

Tous les caractères de nouvelle ligne seront remplacés par 076402276aae5dbec7f672f8f4e5cc81. La fonction est la même que la fonction nl2br() en PHP

regex_replace

Pour rechercher et remplacer des expressions régulières, il doit y avoir deux paramètres. Le paramètre 1 doit remplacer

Expression régulière, quelle chaîne de texte est utilisée pour le paramètre 2 à remplacer

remplacer

Recherche simple et remplacement de caractères Chaîne, doit avoir deux paramètres, le paramètre 1 est la chaîne qui

sera remplacée, le paramètre 2 est le texte utilisé pour remplacer

spacify

Insérer des espaces ou d'autres chaînes entre chaque caractère de la chaîne.,

représente la chaîne qui sera insérée entre deux caractères, par défaut un espace

string_format

est un moyen de formater des nombres à virgule flottante, tels que des nombres décimaux, en utilisant la syntaxe sprintf

. Le paramètre est obligatoire et précise la méthode de formatage à utiliser. %d

signifie afficher un entier, %.2f signifie intercepter deux nombres à virgule flottante

strip

Remplacez tous les espaces, nouvelles lignes et tabulations répétés par une chaîne unique ou spécifiée.

S'il y a un paramètre, c'est la chaîne spécifiée

strip_tags

去除所有html标签

truncate

从字符串开始处截取某长度的字符,默认是80个

upper

将变量改为大写

php代码示例如下:

capitalize(首字母大写):

<{$a|capitalize}>

count_characters(字符计数):

<{$b|count_characters}>

cat(连接字符串):

<{$c|cat:world}>

count_paragraphs(计算段数)----(换行符\n):

<{$d|count_paragraphs}>

count_sentences(计算句数):

<{$e|count_sentences}>

count_words(计算词数):

<{$f|count_words}>

date_format(格式化日期):

<{$smarty.now|date_format:"%y-%m-%d %H:%I:%S"}>

default(默认值):

<{$biaoti|default:"no biaoti"}>

escape(编码):

<{$dz|escape}>

indent(首行缩进):

<{$in|indent}>
<{$in|indent:1:"\t"}>

nl2br换行符替换成:

<{$con|nl2br}>

regex_replace 正则替换

<{$h|regex_replace:"/[\r\t\n]/":" <br/> "}>

replace(替换)

<{$h|replace:"hello":"你好"}>

提醒:

往往开发中有时候是满足不了需求的,那就可以直接写这些变量调节器,其实所谓的变量调节器就是一个函数,在这里我们自己建一个,首先在plugins文件夹里面间建立一个php文件,命名一定按着他的规范。

modifier.capita.php

function Smarty_modifier_capita($string){
//函数命名也是有规范的
 return strtoupper(substr($string,0,1)).strtolower(substr($string,1));
}

模版文件调用:

<{$a|capita}>

相关推荐:

php内置函数如何在smarty中调用的实例分享

Smarty分析保留变量的用法

Smarty模板引擎如何进行缓存的机制详解

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