《TP5.0学习笔记---系统变量原生标签篇》

13 篇文章 1 订阅

系统变量原生标签篇

在模板中使用系统变量以及使用原生标签

我们知道如果我们想在模板页面中使用变量,我们可以通过在控制器中进行分配,如果我们需要使用系统变量,thinkphp为我们提供了更加简洁的方式,我们不需要在控制器中向我们的模板页面进行分配,可以在我们的模板中直接使用(比如:__ROOT,__STATIC,__JS__等)。在thinkphp中,如果我们想在模板中获取一个变量,那么我们可以直接使用{$Think},它可以让我们来获取系统变量,比如我们现在要获取server

{$Think.server},我们先看一下$_SERVER中有哪些可以让我们使用的

然后看一下我们在模板中是如何输出的

当然我们也可以获取Env中的变量。比如{$Think.env.PHP_STATUE}这里一定要加‘PHP_’前缀,并写成大写。

当然我们还可以使用session

同样我们还可以使用cookie,这里我就不再一一截图了。$Think还可以获取我们的get、request、post、值,{$Think.get.id}

我们还可以通过它来获取常量,比如:{$Think.consr.APP_PATH}(这个获取的是我们当前应用目录)

如果我们要获取系统常量可以直接{$Think.常量名}即可

原生PHP标签

下边我们说一下,如何在模板中使用原生的php标签,其实在我们的模板中,最终也会编译成php文件。我们也可以直接在模板中写php代码,写在<?php  …. ?>中即可。我们就可以直接在模板中写php程序,来让它执行,在这里它可以使用我们的模板变量,也可以使用系统变量,都没有问题

但是,在我们的平时开发,不建议大家在模板中是用原生php标记,因为,这样和我们的混编代码类似,它后期维护起来比较难,如果你有一些比较复杂的逻辑需要在模板判断的时候,你优先要考虑需要调整你的控制器,大多数的逻辑需要在我们的控制器中完成,我们的模板只是用来展示我们的界面的,多数的时候,我们不需要在view层进行php代码的编写

变量输出   调节器

模板变量

       如果我们想在模板中对变量进行一些运算以及对变量进行一些特殊的处理,thinkphp为我们提供了很实用的方法。下面我们来看一下如何使用函数来对变量进行调整。比如我想对我的email进行md5加密然后返回到页面

再比如我们想截取email字符串的前七位

当我们要处理的变量为函数的第一个参数的时候(我们也可以用###对第一个参数进行占位也就是写成这样{$email} : {$email|substr=###,0,8},那个###其实代表的就是$email),一般就是上边的这种情况。md5($obj),substr($obj,起始位置,结束为止)。而当我们的变量作为第二个参数的时候,要使用占位符

我们还可以使用连续的函数进行处理,比如对email先进行md5加密,然后再将其转换成大写

Thinkphp支持这种管道的方式,它会逐个执行每一个函数,并将执行的返回值传给后边的一个函数,这样我们就可以在模板中很方便的使用函数来处理我们的变量

我们还可以在我们的模板中进行变量的计算

如果我们在模板中输出一个变量在控制器中没有定义,那么我们可以直接给一个默认值(如果分配了,就会将默认的值覆盖)

如果我想在页面中显示 {$email}而不将他的值解析出来,那么应该这么写

在模板文件中,放在{literal}标签中的变量是不会进行编译的

 

下面我们说说在模板中进行注释,如果我们直接在模板中是用<!---->进行注释,运行的时候确实没有问题,但是如果我们在网页上查看源代码的时候就可以看见注释了,如果我们使用thinkphp内置的注释,查看源代码也不能看见注释了

方式是:{/* … */}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值