fis框架smarty语法总结(二)—— 系统函数

456 阅读1分钟

目录

  • php方法
    • json_enCode——对变量进行 JSON 编码
  • 系统方法
    • $smarty.now——获取访问当前时间
    • $smarty.template——获取当前模板的名称
    • $smarty.version——获取当前smarty版本
    • 显示分割符
    • 获取url的query参数
  • server相关
    • $smarty.server.HTTP_ACCEPT_LANGUAGE 支持语言
    • $smarty.server.HTTP_ACCEPT_ENCODING 支持编码格式
    • $smarty.server.HTTP_CONNECTION
    • $smarty.server.HTTP_HOST http主机名
    • $smarty.server.SERVER_SOFTWARE
    • $smarty.server.SERVER_NAME 服务器名称
    • $smarty.server.SERVER_ADDR 服务器地址
    • $smarty.server.SERVER_PORT 服务器端口
    • $smarty.server.REMOTE_ADDR 远程/客户端 IP
    • $smarty.server.DOCUMENT_ROOT 网站主目录
    • $smarty.server.SCRIPT_FILENAME 当前网页的绝对路径
    • $smarty.server.SCRIPT_NAME 包含当前脚本的路径
    • $smarty.server.PHP_SELF 当前正在执行脚本的文件名
    • $smarty.server.REQUEST_TIME 请求时间
    • $smarty.server.REMOTE_PORT 远程/客户端 端口
    • $smarty.server.GATEWAY_INTERFACE 通用网关接口
    • $smarty.server.SERVER_PROTOCOL 协议
    • $smarty.server.REQUEST_METHOD 请求方法类型
    • $smarty.server.QUERY_STRING ?后面的东西
    • $smarty.server.REQUEST_URI 请求URL
    • $smarty.server.HTTP_USER_AGENT 用户端信息

php方法

所有的smarty里面,都可以直接使用php函数。如果有些逻辑使用smarty找不到,直接使用php函数也是可以解决的。

json_enCode——对变量进行 JSON 编码

var result = {%json_enCode($result)%};
console.log(result);
//{"errNo":0,"errstr":"succerr",data":{"isLogin":1}};

var result1 = {%$result%};
console.log(result1);
//Array

系统方法

获取访问当前时间

{%$smarty.now%}
// 1571731051
{%$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"%}
// 2019-10-22 09:57:31

获取当前模板的名称

{%$smarty.template%}
//activity.tpl

获取当前smarty版本

{%$smarty.version%}
//Smarty-3.1.13

显示分割符

具体显示什么,是根据注册时候指定模板的符号决定

{%$smarty.ldelim%}
// {%

{%$smarty.rdelim%}
// %}

获取url的query参数

// 链接 http://xxx.com?code=123
{%$smarty.get.code%}
// 123

server相关

$smarty.server.HTTP_ACCEPT_LANGUAGE 支持语言

{%$smarty.server.HTTP_ACCEPT_LANGUAGE%}
// zh-CN,zh;q=0.9

$smarty.server.HTTP_ACCEPT_ENCODING 支持编码格式

{%$smarty.server.HTTP_ACCEPT_LANGUAGE%}
// gzip, deflate

$smarty.server.HTTP_CONNECTION

{%$smarty.server.HTTP_CONNECTION%}
//close

$smarty.server.HTTP_HOST http主机名

相当于前端location.hostname

{%$smarty.server.HTTP_HOST%}
// www.xxx.com

$smarty.server.SERVER_SOFTWARE

{%$smarty.server.SERVER_SOFTWARE%}
// nginx/1.9.12

$smarty.server.SERVER_NAME 服务器名称

{%$smarty.server.SERVER_NAME%}
// www.xxx.com

$smarty.server.SERVER_ADDR 服务器地址

{%$smarty.server.SERVER_ADDR%}
// www.xxx.com

$smarty.server.SERVER_PORT 服务器端口

{%$smarty.server.SERVER_PORT%}
// 8080

$smarty.server.REMOTE_ADDR 远程/客户端 IP

{%$smarty.server.REMOTE_ADDR%}
// 192.168.220.192

$smarty.server.DOCUMENT_ROOT 网站主目录

{%$smarty.server.DOCUMENT_ROOT%}
// /index/home

$smarty.server.SCRIPT_FILENAME 当前网页的绝对路径

{%$smarty.server.SCRIPT_FILENAME%}
// /index/home/helloworld/index.php

$smarty.server.SCRIPT_NAME 包含当前脚本的路径

{%$smarty.server.SCRIPT_NAME%}
// /helloworld/index.php

$smarty.server.PHP_SELF 当前正在执行脚本的文件名

{%$smarty.server.PHP_SELF%}
// /helloworld/index.php/activity

$smarty.server.REQUEST_TIME 请求时间

单位为十万分之一毫秒

{%$smarty.server.REQUEST_TIME%}
// 1571734996
{%$smarty.server.REQUEST_TIME|date_format:"%Y-%m-%d %H:%M:%S"%}
// 2019-10-22 17:03:16

$smarty.server.REMOTE_PORT 远程/客户端 端口

{%$smarty.server.REMOTE_PORT%}
// 8560

$smarty.server.GATEWAY_INTERFACE 通用网关接口

{%$smarty.server.GATEWAY_INTERFACE%}
// CGI/1.1

$smarty.server.SERVER_PROTOCOL 协议

{%$smarty.server.SERVER_PROTOCOL%}
// HTTP/1.0

$smarty.server.REQUEST_METHOD 请求方法类型

{%$smarty.server.REQUEST_METHOD%}
// GET/POST

$smarty.server.QUERY_STRING ?后面的东西

{%$smarty.server.QUERY_STRING%}
// os=ios

$smarty.server.REQUEST_URI 请求URL

{%$smarty.server.REQUEST_URI%}
// /helloworld/activity?os=ios

$smarty.server.HTTP_USER_AGENT 用户端信息

相当于前端vigator.userAgent

{%$smarty.server.HTTP_USER_AGENT%}
// Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1