hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - PHP框架 - ThinkPHP - 正文 请牢记本站网址www.sosophp.cn

thinkphp5和3.2的区分【ThinkPHP教程】

2019-11-27ThinkPHP搜搜PHP网33°c
A+ A-

thinkphp5.0版本和之前版本的差别较大,本篇对熟习3.2版本的用户给出了一些5.0的重要辨别。

URL和路由

5.0的URL接见不再支撑一般URL形式,路由也不支撑正则路由定义,而是悉数改成划定规矩路由合营变量划定规矩(正则定义)的体式格局:

重要革新以下;

增添路由变量划定规矩;

增添组合变量支撑;
增添资本路由;
增添路由分组;
增添闭包定义支撑;
增添MISS路由定义;
支撑URL路由划定规矩反剖析;

要求对象和相应对象

5.0新增了要求对象Request和相应对象ResponseRequest一致处置惩罚要乞降猎取要求信息,Response对象担任输出客户端或许浏览器相应。

模块和控制器

控制器的定名空间有所调解,而且能够无需继续任何的控制器类。

  • 运用定名空间一致为app(可定义)而不是模块名;
  • 控制器的类名默许不带Controller后缀,能够设置开启use_controller_suffix参数启用控制器类后缀;
  • 控制器操纵要领采纳return体式格局返回数据 而非直接输出;
  • 取销本来的操纵前后置要领;
  • 增添beforeActionList属性定义前置操纵;
  • 支撑恣意条理的控制器定义和接见;
  • URL接见支撑自动定位控制器;

数据库

5.0的数据库查询功用加强,本来须要经由过程模子才运用的链式查询能够直接经由过程Db类挪用,本来的M函数挪用能够改用db函数,比方:

3.2版本

M('User')->where(['name'=>'thinkphp'])->find();

5.0版本

db('User')->where('name','thinkphp')->find();

重要革新以下:

  • 支撑链式查询操纵;
  • 数据查询支撑返回对象、数组和PDOStatement对象;
  • 数据集查询支撑返回数组和Collection对象;
  • 增添查询组织器,查询语法转变;
  • 支撑闭包查询;
  • 支撑分块查询;
  • 支撑视图查询;
  • 增添SQL监听事宜;

模子

5.0的模子变化是最大的,基本上模子是完整面向对象的观点,包含关联模子,模子类的后缀不再带Model,直接由定名空间辨别,本来的D函数挪用改成model函数,而且必需建立对应的模子类,比方:

3.2版本

D('User')->where(['name'=>'thinkphp'])->find();

5.0版本

model('User')->where('name','thinkphp')->find();

重要革新包含:

  • 重构关联模子;
  • 支撑聚合模子;
  • 取销视图模子(改成数据库的视图查询要领);
  • 模子的扩大采纳Trait机制;
  • 增添猎取器和修改器;
  • 增添时候戳自动写入;
  • 增添范例字段转换;
  • 数组接见支撑;
  • JSON序列化支撑;

自动考证和自动完成

5.0的数据自动考证和自动完成和3.2版本辨别较大,5.0的数据考证采纳考证器定义而且经由过程think\Validate类举行一致的考证。自动完成则经由过程在模子内里定义修改器来完成。

非常

5.0对毛病零容忍,默许情况下会对任何级别的毛病抛出非常(但能够在运用大众文件中设置毛病级别),而且从新设想了非常页面,展现了详实的毛病信息,便于调试。

调试和日记

5.0的页面Trace强化,支撑浏览器控制台检察Trace信息。

5.0的日记驱动增添Socket体式格局,采纳SocketLog支撑长途调试。

常量

5.0版本烧毁了本来的大部分常量定义,仅仅保留了框架的途径常量定义,其他的常量能够运用App类或许Request类的相干属性或许要领来完成,或许本身从新定义须要的常量。

取销的常量包含:

REQUEST_METHOD IS_GET IS_POST IS_PUT IS_DELETE IS_AJAX __EXT__ COMMON_MODULE MODULE_NAME CONTROLLER_NAME ACTION_NAME APP_NAMESPACE APP_DEBUG MODULE_PATH

函数

5.0版本中心框架不依赖任何自定义函数,但仍然封装了一些经常使用功用到助手函数,你能够随便从新定义或许增添助手函数。

本文来自ThinkPHP框架技术文章栏目:http://www.ki4.cn/phpkj/thinkphp/

以上就是thinkphp5和3.2的辨别的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
thinkphp5和3.2的区分【ThinkPHP教程】

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签: