TP框架复习(三)

版权声明:CopyRight @CSDN 码农Robin https://blog.csdn.net/weixin_41423450/article/details/85148341

1、控制器

1.1、页面跳转与重定向

页面跳转与重定向使用需要继承TP控制器的基类然后调用对应的方法即可,在控制器基类中有跳转方法success和error,分别对应提示成功与失败,重定向可以使用redirect方法实现。(真实的源码并不在控制器基类中)

①、创建方法

在这里插入图片描述

②、访问测试

在这里插入图片描述

在这里插入图片描述

1.1.1、页面跳转源码解析

源码文件:thinkphp\library\traits\controller\Jump.php

在这里插入图片描述

跳转页面、错误页面地址及配置:

在这里插入图片描述

1.1.2、重定向

源码(地址同success和error):

在这里插入图片描述

①、创建方法

在这里插入图片描述

②、访问测试

在这里插入图片描述

1.2、空控制器与空操作

空控制器与空操作是为了增加用户体验

1.2.1、空操作

当用户访问存在的控制器下的不存在的方法时触发

①、创建空操作

在这里插入图片描述

②、访问测试

在这里插入图片描述

1.2.2、空控制器

①、创建空控制器

在这里插入图片描述

②、访问测试

在这里插入图片描述

③、再次访问一个不存在的方法

在这里插入图片描述

④、增加空操作

在这里插入图片描述

⑤、再次访问

在这里插入图片描述

当访问一个不存在的控制器时,会由模块下空控制器执行

当方法存在时,直接执行空控制器下的方法

当方法不存在时,直接执行空控制器下的空操作

在实现开发过程中可以使用web服务器的错误设置页面提高用户体验。

2、视图

2.1创建视图

2.1.1、视图创建规则

①、视图存储在每一个模块下的view目录中

②、TP建议在view目录下创建一个和控制器名称相同的目录(文件夹名称小写)

③、关于模板文件名称需要和方法名称保持一致

2.1.2、创建视图

①、创建控制器方法

在这里插入图片描述

②、将页面相关静态资源拷贝到public目录下

在这里插入图片描述

③、修改模板中静态文件的相对地址(其中__STATIC__即为public目录,可在配置文件中修改)

在这里插入图片描述

2.1.3、跨模块调用模板

在这里插入图片描述

在这里插入图片描述

2.1.4、跨控制器调用模板

在这里插入图片描述

在这里插入图片描述

2.2、变量分配

①、使用assign方法实现

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

②、使用fetch方法赋值

在这里插入图片描述

在这里插入图片描述

对于模板赋值只要继承了基类就可以使用assign方式赋值,不需要考虑如何渲染模板,fetch和view在使用上也是一致的

在这里插入图片描述

2.3、模板渲染规则

模板渲染规则同smarty语法,模板相关设置在配置文件中

在这里插入图片描述

自定义模板字符串内容替换:

在这里插入图片描述

即:将模板中出现数组键名的字符串替换为数组对应的键值

由于模板中显示变量每次都需要进行手动赋值,而有些数据在框架内部完成了赋值操作,模板系统变量统一采用"$Think"开头。

模板系统变量所支持的类型包括:
①、显示TP的配置信息
②、显示TP内置的常量或者PHP内置常量
③、显示PHP超全局数组,例如 G E T _GET、 _POST等
④、显示时间

模板内置标签之volist

在这里插入图片描述

还支持使用
empty指定数据为空时显示
mod指定计算器,可以用于实现隔行换色效果
key指定循环次数的变量名称

①、基本循环

在这里插入图片描述

在这里插入图片描述

②、使用偏移量及循环长度

在这里插入图片描述

在这里插入图片描述

③、使用key

在这里插入图片描述

在这里插入图片描述

④、使用mod

在这里插入图片描述

为适应语法环境,将模板标签替换为"<{“和”}>"

在这里插入图片描述

在这里插入图片描述

3、DB数据库操作

3.1、配置数据库的连接

在这里插入图片描述

3.2、获取DB类的对象

①、使用助手函数

在这里插入图片描述

②、使用DB类的table方法

在这里插入图片描述

③、使用DB类的name方法

在这里插入图片描述

在这里插入图片描述

table与name方法的区别在于,name方法不需要表前缀

3.3、数据的基本增删改查

3.3.1数据写入

单条记录写入采用insert方法

在这里插入图片描述

返回插入成功的条数

在这里插入图片描述

批量添加数据采用insertAll方法

在这里插入图片描述

在这里插入图片描述

3.3.2、数据查询

查询数据可以使用find与select方法实现,find只查询一条数据,select可查询多条数据

find:

在这里插入图片描述

在这里插入图片描述

select:

在这里插入图片描述

在这里插入图片描述

3.3.3、更新数据

数据更新使用update方法

在这里插入图片描述

在这里插入图片描述

更新之后返回的结果为受影响行数,如果要判断是否更新成功,需要将结果与false进行全等判断

3.3.4、数据删除

删除数据采用delete方法实现

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41423450/article/details/85148341
今日推荐