当前位置:首页 > 技术记录 > 正文内容

php7.2兼容thinkphp3.2,thinkphp3.2升级php7.2要点记录

ogfogf4年前 (2021-11-16)技术记录1677

有一台老服务器到期了,新升级的系统,再安装旧版本的php环境,多少有点麻烦。

毕竟php5 已经被官方放弃有一段时间了,php7 也已经发布使用了很长时间。

由于php7相对于php5,升级改动的地方很多,一方面带来了很多关于性能和安全性的提升。

另一方面废除了很多就的函数和扩展,导致很多基于php5开发的项目,升级php7需要改动一些代码才可以。

对于php7 而言,php7.2也算是个小的分界岭,在php7.2又改进了很多地方。

索性我就选择了php7.2

对于很多国产框架和cms而言,升级php7.2要注意的要点php5时代的标签机制代码改写

cms中,模版体系的重要部分就是标签,用于渲染调用数据,这些标签会由框架和cms的模版引擎部分控制,比如thinkphp phpcms,这里大多数会用到

正则表达式替换,使用preg_replace 的e 模式,执行回调。而这个模式在php7.2被废止了,所以要找到这些代码修改为preg_replace_callback 函数的写法。

2.thinkphp的参数过滤和路由分发

这里也是preg_replace 引发的问题,thinkphp 对于url的模式,可以基于pathinfo,进行过滤和重组,里面有几处使用preg_replace的e模式,要修改,否则

在thinkphp3.2 使用rewrite模式的时候,get的参数会不正常,这是因get的参数基于pathinfo 被框架再次重组赋值了。

3.mysql扩展不可用,切换mysqli

这个很简单修改配置文件,已经psn 作为mysql数据库连接配置的时候,mysql:// 改为mysqli://协议即可。

完成上述的几处关于thinkphp3.2升级php7.2的要点的修改以后。

网站就顺利迁移了,测试一些页面的接口的访问,正常运行!


扫描二维码推送至手机访问。

版权声明:本文由技术建站文档发布,如需转载请注明出处。

分享给朋友:

相关文章

mariadb 在低配 VPS 上崩溃问题处理方案

本文章向大家介绍mariadb 在低配 VPS 上崩溃问题处理方案,主要包括mariadb 在低配 VPS 上崩溃问题处理方案使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要...

豆荚直播助手 直播加加可以绿幕

豆荚直播助手 直播加加可以绿幕,直播利器...

腾讯云 linux nginx 配置 ssl

首先在腾讯云购买一台服务器 (Linux),域名绑定IP,这篇文章以我的域名 banwago.com 为例。申请 DV SSL 证书,一天左右会颁发下来,假设你用的客户端是 windows,下载证书,...

Word基本技巧-利用宏批量删除多个Word页眉页脚

Word基本技巧-利用宏批量删除多个Word页眉页脚

假如我手上有500个word文档需要删除页眉页脚先把需要删除页眉页脚的500个word文档放在一个文件夹下,然后打开其中一个文档在打开的文档中,选择在“工具”菜单中选择“宏”--“宏”随后弹出“宏”对...

linux 安装 ffmpeg

linux 安装 ffmpeg

https://blog.csdn.net/u013416034/article/details/130649958windows上安装,直接下载压缩包解压。linux安装,找了半天各种技术文章,说最...

Linux关闭防火墙命令

一、下面是red hat/CentOs7关闭防火墙的命令!1:查看防火状态systemctl status firewalldservice iptables status2:暂时关闭防火墙syste...