首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[分享]杰奇cms变量调节器

发布于 2024-12-02 17:28:43
0
148

模板变量支持多种调节函数来改变输出效果,模板标签格式为 {?$var|function:var1:var2?}变量名之后用 |分隔,然后是函数名字,再后面是函数的参数,每个参数用 : 分隔,参数是字符...

模板变量支持多种调节函数来改变输出效果,模板标签格式为 {?$var|function:var1:var2?}
变量名之后用 |分隔,然后是函数名字,再后面是函数的参数,每个参数用 : 分隔,参数是字符串时候建议用双 引号来包括。

常用变量调节器如下:

3.1 truncate - 截取固定长度字符串,参数一(必要):截取后长度,参数二:附加字符串。

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', '123456789');

模板:

{?$var|truncate:5?} | {?$var|truncate:5:".."?}

输出:

12345 | 123..
---------------------------------------------------------------------
3.2 subdirectory - JIEQI CMS 里面专用于生成子目录名字的函数,针对数字的处理,无参数。输出格式类似 "/12",其中"/" 是表示开始一个子目录,"12"是子目录名字。

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('id', 3456);

模板:

/files/article/html{?$id|subdirectory?}/{$id?}/index.html

输出:

/files/article/html/3/3456/index.html
---------------------------------------------------------------------
3.3 date - 把数字类型的时间格式化成字符串,参数一:格式化字符串
格式化字符含义主要有以下几个:
Y - 四位的年份,如 2007
y - 二位年份,如 07
m - 二位月份,不足补零,从 01 到 12
n - 月份,不补零,从 1 到 12
d - 二位的天数,不足补零,从 01 到 31
j - 天数, 不补零, 从 1 到 31
H - 二位24小时格式,从 00 到 24
h - 二位12小时格式,从 00 到 12
G - 24小时格式,从 0 到 24
g - 12 小时格式,从 0 到 12
i - 二位分数,从 00 到 59
s - 二位秒数,从 00 到 59

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('time', 1198226131);

模板:

{?$time|date:"Y-m-d H:i:s"?}

输出:

2007-12-21 16:35:31
---------------------------------------------------------------------
3.4 str_replace - 字符串替换,参数一:查找的字符串,参数二:替换为字符串

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', '//www.jieqi.com');

模板:

{?$var|str_replace:"www":"demo"?}

输出:

http://demo.jieqi.com
---------------------------------------------------------------------
3.5 urlencod,urldecode - 分别是把字符串进行url编码和解码,于在url传递变量情况,无参数

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', '//www.jieqi.com');

模板:

{?$var|urlencode?}

输出:

http%3A%2F%2Fwww.jieqi.com
---------------------------------------------------------------------
3.6 strlen - 计算字符串长度,无参数

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', 'abcd');

模板:

{?$var|strlen?}

输出:

4
---------------------------------------------------------------------
3.7 defaultval - 变量为空的时候默认输出的值,参数一:默认值

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', 'abcd');
$jieqiTpl->assign('var1', '');

模板:

{?$var|default:"empty"?} | {?$var1|defaultval:"empty"?}

输出:

abcd | empty
--------------------------------------------------------------------- 3.8 sprintf - 格式化输出,参数一:格式化规则
本函数参数是一个字符串,里面可以是任意要输出的字符串,用 % + 类型标志 来表示当前变量格式 常用格式为
%d - 表示数字类型
%06d - 表示显示6位长度的数字类型,位数补足前面补0
%s - 表示字符串类型

例子:

---------------------------------------------------------------------

程序:

$jieqiTpl->assign('var', 123);

模板:

{?$var|sprintf:"%06d"?} | {?$var1|sprintf:"The number is %s"?}

输出:

000123 | The number is 123
---------------------------------------------------------------------

其他支持的php系统函数有

'addslashes','htmlspecialchars','htmlentities','nl2br','rawurlencode','rawurldecode','bin2hex','s trip_tags','stripslashes','strlen','strtolower','strtoupper','trim','ucfirst','ucwords','sizeof', 'basename','dirname','base64_encode','base64
_decode','empty','is_array','isset','getdate','crc32','md5','count','ceil','floor','round','abs', 'urlencode', 'urldecode', 'intval', 'strval','subdirectory', 'serialize', 'unserialize'
'strrchr','strstr','str_pad','number_format','substr','wordwrap','truncate','arithmetic','default val', 'jieqi_geturl'
'date','implode','sprintf','str_replace'

评论
一个月内的热帖推荐
久久在线
Lv.1普通用户

551

帖子

21

小组

2050

积分

赞助商广告
站长交流