系统中常用语法

2023-09-14 08:42 更新

变量输出

输出一个变量的值

  • 模板中调用方式:​{$my_var}
在模板中花括号可以省略但不建议去掉。
  • php文件调用方式: ​$my_var

条件判断

通过if判断流程分支

  • 模板中调用方式:
<!--{if $my_var}-->
    任意html语句
<!--{/if}-->

带有多条件的if写法,可使用PHP常规判断中的各种运算符

<!--{if $my_var && ($my_var2 & 1 || $my_var3 == 3)}-->
    任意html语句
<!--{/if}-->

带有分支条件的if写法

<!--{if $my_var == 1}-->
    变量为1
<!--{elseif $my_var == 2}-->
    变量为2
<!--{else}-->
    其他情况
<!--{/if}-->
  • php文件调用方式:
if ($my_var) {
}

带有多条件的if写法,可使用PHP常规判断中的各种运算符

if ($my_var && ($my_var2 & 1 || $my_var3 == 3)) {
}

带有分支条件的if写法

if ($my_var == 1) {
}elseif ($my_var == 2){
    
}else{
}

循环输出

带有数组键的循环写法

  • 模板中调用方式:
<!--{loop $my_arr $key $val}-->
    循环输出的HTML语句
<!--{/loop}-->

没有数组键的循环写法

<!--{loop $my_arr $val}-->

  • php文件调用方式:
foreach($my_arr as $val){
}

模板嵌套

例如dir/main 对应某个模块中template目录中的dir目录的main.htm模板文件
  • 模板中调用方式:​<!--{template dir/main}-->
  • php文件调用方式:​include template('dir/main');
例如main 对应某个模块中template目录的main.htm模板文件
  • 模板中调用方式:​<!--{template main}-->
  • php文件调用方式:​include template('main');
程序调用模板时,将优先寻找当前层,比如应用dzz/test,将寻找test对应目录下的template下的模板文件,如果没有找到将向上查找dzz下的模板目录,如果依然不能找到将调用/core/template/default/common/下的模板文件。其中找到任意一层将不再向上查找。

变量数组可以嵌套使用

  • 模板中调用方式:

<!--{if $my_arr[$my_var]}-->

<!--{if $my_arr[0]}-->

<!--{if $my_arr[$my_arr2[$my_var]]}-->

  • php文件调用方式:
if ($my_arr[$my_var]) {
}
if ($my_arr[0]) { 
}
if ($my_arr[$my_arr2[$my_var]]) { 
}

PHP语句解析

在模板中使用PHP语句可以通过{eval }进行

  • 模板中调用方式:

<!--{eval $my_var = 1;}-->

<!--{eval echo $my_var;}-->

<!--{eval $my_arr = array(1, 2, 3);}-->

<!--{eval print_r($my_arr);}-->

<!--{eval output();}-->

<!--{eval exit();}-->

  • php文件调用方式:
$my_var = 1;
echo $my_var;
$my_arr = array(1, 2, 3);
print_r($my_arr);
output();
exit();

语言包使用

在模板中可以通过下面的代码来使用语言包中的某个值

  • 模板中调用方式:​{lang title}
  • php文件调用方式: ​lang('title')
其中语言包在 当前模块/language/lang.php中或上级模块/language/lang.php中或./core/language/lang.php中,以PHP数组形式存放

路由语句使用

以下说明以当前页面URL为http://127.0.0.1/admin.php?mod=systemlog>op=admin为例

  • 模板中调用方式:​{MOD_PATH}
  • php文件调用方式: ​MOD_PATH
结果为:admin/systemlog
  • 模板中调用方式:​{MOD_NAME}
  • php文件调用方式: ​MOD_NAME
结果为:systemlog
  • 模板中调用方式:​{MOD_DIR}
  • php文件调用方式: ​MOD_DIR
结果为:./admin/systemlog
  • 模板中调用方式:​{MOD_URL}
  • php文件调用方式: ​MOD_URL
结果为:admin.php?mod=systemlog
  • 模板中调用方式:​{OP_NAME}
  • php文件调用方式: ​OP_NAME
结果为:admin
  • dzzoffice小胡版模板中调用方式:​{OP_NAME}
  • dzzoffice小胡版php文件调用方式: ​OP_NAME
结果为:admin.php?mod=systemlog&op=admin

获取当前域名

以http://127.0.0.1域名为例,结果为http://127.0.0.1/
  • 模板中调用方式:​{$_G['siteurl']}​、​$_G[siteurl]​、​{$_G[siteurl]}
  • php文件调用方式: ​$_G['siteurl']​、​$_G[siteurl]

获取当前用户UID

以当前用户UID是1为例,结果为1
  • 模板中调用方式:​{$_G['uid']}​、​$_G[uid]​、​{$_G[uid]}
  • php文件调用方式: ​$_G['uid']​、​$_G[uid]

获取当前用户名

以当前用户名是小胡为例,结果为小胡
  • 模板中调用方式:​{$_G['username']}​、​$_G[username]​、​{$_G[username]}
  • php文件调用方式: ​$_G['username']​、​$_G[username]


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号