视图查询

数据库

视图查询

2021-03-25 07:09:38 794阅读 890赞
视图查询可以实现不依赖数据库视图的多表查询,并不需要数据库支持视图,例如:Db::view('User','id,name')    ->view('Profile
子查询

数据库

子查询

2021-03-25 07:07:35 786阅读 823赞
首先构造子查询SQL,可以使用下面三种的方式来构建子查询。1、使用select方法当select方法的参数为false的时候,表示不进行查询只是返回构建SQL,例如:$subQuery = Db::table('think
原生查询

数据库

原生查询

2021-03-25 07:07:01 714阅读 834赞
Db类支持原生SQL查询操作,主要包括下面两个方法:query方法query方法用于执行SQL查询操作,如果数据非法或者查询错误则返回false,否则返回查询结果数据集(同select方法)。使用示例:Db::query("select&n
查询事件

数据库

查询事件

2021-03-25 07:06:26 867阅读 621赞
查询事件(V5.0.4+)从5.0.4+版本开始,增加了数据库的CURD操作事件支持,包括:事件描述before_selectselect查询前回调before_findfind查询前回调after_insertinsert操作成功后回调after_
事务操作

数据库

事务操作

2021-03-25 07:05:56 712阅读 816赞
使用事务处理的话,需要数据库引擎支持事务处理。比如 MySQL 的 MyISAM 不支持事务处理,需要使用 InnoDB 引擎。使用 transaction 方法操作数据库事务,当发生异常会自动回滚,例如:自动控制事务处理Db::transactio
监听SQL

数据库

监听SQL

2021-03-25 07:05:27 927阅读 714赞
如果开启数据库的调试模式的话,你可以对数据库执行的任何SQL操作进行监听,使用如下方法:Db::listen(function($sql, $time, $explain){    //&n
存储过程

数据库

存储过程

2021-03-25 07:03:55 792阅读 732赞
5.0支持存储过程,如果我们定义了一个数据库存储过程sp_query,可以使用下面的方式调用:$result = Db::query('call sp_query(8)');返回的是一个二维数组,也可以使
准备工作

模板制作

准备工作

2021-03-24 10:10:12 994阅读 814赞
系统环境的搭建,请点击链接查看。系统环境搭建好了,好的工具有利于你快速修改和制作模板。一、浏览器二、编辑器三、熟悉模板制作标签(当然,如果你只是对已有的模板做单纯的修改,比如:颜色修改、结构修改等。那么不熟悉模板标签也没关系。)在制作模板之前,你还需
标签用法

模板制作

标签用法

2021-03-24 10:08:31 760阅读 669赞
静态页面编写需要导航条、新闻列表等页面内容信息,在制作模板的时候就用标签来代替,模板标签就是后台设置的数据,所以模板标签你必须得熟悉,你可以看看模板标签大全有哪些标签可以使用,也务必要完全理解本文内容,否则你将不知道怎么使用模板标签。模板标签的类型:
页面应用

模板制作

页面应用

2021-03-24 10:07:57 883阅读 983赞
也可以叫做页面调用,在页面执行的时候将指定模板文件的代码引用到当前页面来。对于网站头部、尾部、页面侧边导航等公共部分可以引用过来,以免每个页面都去编写这些公共页面上图就是首页页面结构,实际上是把头部、中间、底部代码用三个模板文件分开,这样做的好处就是
数据集

数据库

数据集

2021-03-24 10:06:52 688阅读 985赞
版本功能调整5.0.5原生查询不支持返回数据集对象数据库的查询结果也就是数据集,默认的配置下,数据集的类型是一个二维数组,我们可以配置成数据集类,就可以支持对数据集更多的对象化操作,需要使用数据集类功能,可以配置数据库的resultset_type参
分布式数据库

数据库

分布式数据库

2021-03-24 10:02:54 561阅读 545赞
ThinkPHP内置了分布式数据库的支持,包括主从式数据库的读写分离,但是分布式数据库必须是相同的数据库类型。配置database.deploy 为1 可以采用分布式数据库支持。如果采用分布式数据库,定义数据库配置信息的方式如下://分布式
请求信息

请求

请求信息

2021-03-24 10:01:27 620阅读 617赞
如果要获取当前的请求信息,可以使用\think\Request类,除了下文中的$request = Request::instance();也可以使用助手函数$request = request();当然,最方
输入变量

请求

输入变量

2021-03-24 10:00:50 773阅读 838赞
概述可以通过Request对象完成全局输入变量的检测、获取和安全过滤,支持包括$_GET、$_POST、$_REQUEST、$_SERVER、$_SESSION、$_COOKIE、$_ENV等系统变量,以及文件上传信息。检测变量是否设置可以使用has
更改变量

请求

更改变量

2021-03-24 10:00:21 659阅读 616赞
如果需要更改请求变量的值,可以通过下面的方式:// 更改GET变量Request::instance()->get(['id'=>10]);// 更改POST变量Request::instance()-
请求类型

请求

请求类型

2021-03-24 09:59:44 944阅读 774赞
获取请求类型在很多情况下面,我们需要判断当前操作的请求类型是GET、POST、PUT、DELETE或者HEAD,一方面可以针对请求类型作出不同的逻辑处理,另外一方面有些情况下面需要验证安全性,过滤不安全的请求。ThinkPHP5.0 取消了用于判断请
请求伪装

请求

请求伪装

2021-03-24 09:59:16 770阅读 767赞
请求类型伪装支持请求类型伪装,可以在POST表单里面提交_method变量,传入需要伪装的请求类型,例如:<form method="post" action=""> 
HTTP头信息

请求

HTTP头信息

2021-03-24 09:58:53 864阅读 538赞
可以使用Request对象的header方法获取当前请求的HTTP 请求头信息,例如:$info = Request::instance()->header();echo $info['accept'
伪静态

请求

伪静态

2021-03-24 09:58:18 790阅读 729赞
URL伪静态通常是为了满足更好的SEO效果,ThinkPHP支持伪静态URL设置,可以通过设置url_html_suffix参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行。例如,我们设置'url_html_suffi
方法注入

请求

方法注入

2021-03-24 09:57:47 603阅读 796赞
如果你需要在Request请求对象中添加自己的方法,可以使用Request对象的方法注入功能,例如:// 通过hook方法注入动态方法Request::hook('user','getUserInfo');g