【43】WEB安全学习----PHP-ThinkPHP框架2

模板常量替换机制


__MODULE__:表示从域名后面开始一直到分组名结束的路由

__CONTROLLER__:表示从域名后面开始一直到控制器结束的路由

__ACTION__:表示从域名后面开始一直到方法名结束的路由

__PUBLIC__:站点根目录下的public目录路由

__SELF__:表示从域名后面开始一直到路由的最后

模板内容获取

在Thinkphp中,获取模板内容通过$this->fetch()方法

打印输出通过dump()方法。

fetch方法和display方法相比,没有display方法的输出。

public function test1(){
		$str1 = $this->fetch();
		dump($str1);
	}

模板注释

在ThinkPHP中,模版注释有两种方法:注释内容在输出里是没有的。

行注释:{//注释内容}

块注释:{/*注释内容*/}

变量分配(进阶)

简单变量输出:前面已学习过,{$模板变量名}

一维数组输出:中括号形式:{ayyay[key]}、点形式:{array.key}

二维数组输出:中括号形式:{ayyay[key][key]}、点形式:{array.key.key}

对象变量输出:对象在实例化后一般会保存在一个变量中去,这个变量也可以输出到模板中去。

{$obj->attr}、{$obj::attr}

系统变量

thinkphp提供了几个系统级别的变量(超全局变量在模板中的使用)

  • $Think.server
  • $Think.get
  • $Think.post
  • $Think.request
  • $Think.cookie
  • $Think.session
  • $Think.config:获取thinkphp中所有配置文件的一个总和

举例:获取GET请求中的id,则可以写成{$Think.get.id}

默认值

当某个变量不存在或为空时,就会默认显示的字符,默认的字符就是变量的默认值。

语法:{$变量名|default=默认值}

运算符

{$a+$b}、{$a-$b}、{$a*$b}、{$a/$b}、%、++、--等

文件包含

<include file='需要引入的模板文件' 参数名=‘参数值’>

模型

什么是模型:是MVC三大组成部分,作用是负责与数据表的交互(CURD)。

模型的创建:

命名规范:模型名(要求是不带前缀的表名且首字母大写)+Model关键词+.class.php

模型的实例化:

D方法实例化:

$obj=D(['模型名']);//实例化自己创建的模型(分组/Model目录中)

M方法实例化:

$obj=M(['不带前缀的表名']);//直接实例化父类模型(thinkphp目录下的model)

数据库的配置

数据库的配置项可以在系统配置文件找到,将这里的配置复制到应用级别的配置文件中。

数据库的操作

CURD操作:Create、Update、Read、Delete

增加操作:

insert into ==> $model->add()方法

修改操作:

update table => $model->save()方法

查询操作:

select => $model->select()方法,查询全部的信息

select => $model->select(id)方法,查询指定ID的信息

select => $model->select('id1,id2,id3....')方法,查询指定ID集合的信息

删除操作:

delete from => $model->delete()方法,不能使用,删除方法必须要有条件

delete from => $model->delete(id)方法

delete from => $model->delete('id1,id2,id3....')方法

SQL的调试:

$model->getLastSql()或$model->_sql()。会输出当前模型最后一条SQL语句

跟踪信息:

开启了Thinkphp跟踪信息后,会在页面右下角显示一个小图标:

点击这个小图标,会弹出如下界面:

两种模式:

为了方便开发,thinkphp提供了以下两种模式:默认是生产模式

调试模式:错误信息比较详细

生产模式:错误信息比较模糊

猜你喜欢

转载自blog.csdn.net/a15803617402/article/details/83649933
今日推荐