ThinkPHP 8.1.4 版本宣布 —— 兼容 PHP 8.5 及多项优化

本次更新带来了核心框架和ORM的多项功能改进和问题修复,兼容PHP8.5版本,并进一步提升了框架的稳定性和开发体验。同时也给2025年的工作划上了一个完美的句号,期待新的一年更多的新特性。 核心更新 🚀 核心功能...

应用介绍

改进接洽关系写入支撑JSON字段映射

  • 本次更新带来了核心框架和ORM的多项功能改进和问题修复,兼容PHP8.5版本,并进一步晋升了框架的稳定性和开辟体验。同时也给2025年的工作划上了一个完美的句号,等待新的一年更多的新特点。

    核心更新

    🚀 核心功能加强

    1. Config类优化

      • 改进hook办法,增长key参数支撑

      • 调剂lazy办法实现,晋升设备加载效力

    2. 路由体系改进

      • 修改路由URL生成逻辑

      • 路由绑定到定名空间支撑控制器后缀

      • 优化路由中心件传参机制

    3. 请求响应优化

      • 加强Response类send办法的异常处理才能

      • 改进HttpEnd缺点日记记录

    🔧 兼容性与机能

    1. connect

      PHP兼容性

      • 周全兼容PHP8.5版本

      • 调剂"psr/http-message"依附,增长"^2.0"支撑

    2. 缓存与日记

      • 改进Redis缓存驱动机能

      • 晋升日记处理效力

    🛠️ 开辟对象加强

    1. 新增敕令行对象

      • 新增 optimize 敕令,供给更多优化选项

    2. 代码质量

      • 优化 PHP CS Fixer 设备规矩

      • 优化日记文件删除次序

      • 晋升代码规范性和可保护性

    ORM更新

    同时我们也给ThinkORM4.0带来了大年夜量的优化和改进。

    机能优化

    • 完美pgsql驱动支撑获取字段注解内容

    • 引入LazyCollection惰性数据集,大年夜幅削减内存占用

    • chunk
      办法应用lazy重写,晋升大年夜数据量处理机能

    • 接洽关系预载入查询应用cursor削减内存开销

    • 改进视图模型多级子接洽关系映射问题

    • 改进Request类功能

    • 改进lazy办法对distinct的处理

    • 改进toarray办法的append处理,支撑relation.attr方法

    • LazyCollection
      类增长page办法简化数据处理

    • 改进cursor办法支撑接洽关系查询

    • 改进接洽关系预载入查询的limit办法

    • 优化PDOConnection类queryexecute办法,不依附Query

    视图模型功能完美

    • 完全的视图模型生命周期支撑(查询、验证、写入)

    • 支撑主动接洽关系查询和写入

    • 自力的查询范围和搜刮器

    • JSON字段映射和类型转换

    • 视图模型增长clearrefleshvalidatedata等办法

    • 视图模型默认支撑写入,除非readonly为true(原allowWrite参数放弃)

    • 改进视图模型的主动接洽关系查询,不依附autoMapping定义,会主动检测接洽关系映射

    • 优化视图模型的查询前提处理,可以主动根据视图模型的属性查询,会主动接洽关系查询

    • 视图模型查询排序字段支撑映射

    • 改进视图模型的嵌套接洽关系数据写入

    • 改进视图模型的获取器调用

    • 改进视图模型支撑基本类参数定义

    • 改进视图模型的data办法支撑原有属性和传入对象

    • 改进视图模型的一对多接洽关系写入

    • 改进视图模型的createupdatesavesaveAll等办法

    • 改进视图模型的主动数据验证,支撑字段映射

    • 视图模型增长validate_mapping_data设备,用于设置是否验证映射后的数据

    数据库连接加强


    • 办法支撑数组设备

    • 数据库驱动增长时区设置,同一应用timezone参数设备

    • PostgreSQL驱动完美,应用标准体系表查询字段信息

    • 改进路由分组的URL有效性检查

    • 增长after_connect事宜

    • 数据库numberic类型视为字符串类型处理

    接洽关系查询功能加强

    • 一对多接洽关系增长firstlast办法

    • 一对一接洽关系增长firstOfManylastOfMany办法

    • 改进hasWhere查询前提支撑更多的数组用法

    • 修改belongsTo接洽关系的hasWhere办法

    模型功能加强

    • 模型增长scene办法,用于设置主动验证的场景

    • 模型和实体模型增长基本设备定义办法getBa搜刮引擎优化ptions()

    • 模型增长setAttrsgetAutoInc等办法

    • 改进模型的suffix办法调用处理

    • 调剂getPk办法支撑没有主键的表

    • 模型类和数据集对象增长toView办法

    • 改进autoWriteData办法对于手动写入的主动写入时光字段不再生成

    • 改进模型的destory办法增长together参数

    • 改进Model类get办法

    • 去掉落Model类的autoinc处理

    • 改进实体模型和视图模型的newInstancesetModel办法

    • 改进视图模型的clonerefresh办法

    • 改进视图模型的查询字段主动辨认

    查询功能改进

    • 增长lazy惰性查询办法

    • 优化预载入接洽关系查询应用lazy办法

    • 增长stream流式处理办法,支撑流式回调

    • 优化Json字段解析效力

    • 改进hasWhere的查询前提,支撑更多的数组用法

    • 改进join查询办法的多次调用

    • 改进parserOrder办法支撑json字段排序

    • 改进getOrigin办法增长类型转换参数

    问题修复

    • 修改DateTime类封闭时光格局化后的问题,支撑写入null

    • 修改软删除功能

    • 修改OptimLock的getDbWhere办法参数默认值

    • 修改order办法传数组的别号问题

    • 修复chunk查询中断问题

    • 修复mongo游标查询问题

    • 修改修改器的data参数

    • 改进Model类__isset__unset__unserialize办法

    • composer create-project topthink/think tp

      进级现有项目

      composer update topthink/framework

      留意事项

      1. 本次更新为惯例保护版本,保持向下兼容

      2. 建议在测试情况中验证后再安排到临盆情况

      3. 修改chunk办法主键不存在的情况查询掉足问题

      4. 如碰到任何问题,请拜访官方文档或提交Issue

      申谢

      感激所有为ThinkPHP供献代码的Tper们!是你们的支撑让ThinkPHP框架赓续进步,闪开辟变得更简单一向都是我们秉承的原则,官方筹划鄙人一个版本引入一些更冲动人心和增长开辟体验的新特点。


      官方资本

      • 改进update办法的刷新数据

      安装与进级

      全新安装

      视图模型支撑updatecreate办法调用并返回当前视图模型

    • 官方网站:https://www.thinkphp.cn

    • 文档中间:https://doc.thinkphp.cn

    • 社区论坛:https://bbs.thinkphp.cn

    • 官方智能体:https://chat.topthink.com

  • 点赞(0) 打赏

    立即下载

    相关下载

    评论列表 共有 0 条评论

    暂无评论

    微信小程序

    微信扫一扫体验

    立即
    投稿

    微信公众账号

    微信扫一扫加关注

    发表
    评论
    返回
    顶部