ThinkPHP V5.1.32(LTS)版本发布,该版本为常规更新,改进了一些细节,修正了一些社区反馈的问题,支持上一版本的无缝升级(LTS版本不会再有任何的不兼容更新)。

主要更新

缓存标签机制改进

之前缓存标签在处理机制上没有考虑不同缓存类型的特殊性,采用了通用化处理,导致在处理缓存标签的时候性能不佳,并且可能导致内存溢出的情况。

新版针对RedisMemcached缓存类型的缓存标签做了优化处理。并改进了其它缓存类型的情况下,缓存标签的缓存Key数量最大不超过1000个。

改进关联模型的save方法

对于一对多关联、多态关联的save方法进行了改造,并增加了一个新的make方法用于把数据保存在内存中而不是实际写入数据库。

改进多对多关联的中间表写入

多对多关联的中间表数据写入现在支持使用修改器以及系统时间字段的写入。

修正聚合查询的field处理

修正了聚合查询后会清空查询field信息的问题。

改进控制器在Swoole下的调用

每次请求的时候会重新实例化控制器类,避免在Swoole等环境下出现了控制器类的request属性数据没有变化的情况。同时,也改进了控制器中间件的调用。

改进时间字段的写入和输出

改进时间字段的格式定义为时间类的情况下,时间字段的写入和输出的问题。

改进路由变量替换的性能

优化了路由变量的替换性能。