您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程

phpcmsV9升级至php7.1常见报错修复方法

傲蕾2025-05-18phpcms教程已有人查阅

导读最近将phpcmsV9升级至php7.1,中间踩过一些坑,这里列出来给大家参考下。1. 迁移至php7.1+mysql5.6+nginx的修改项目

最近将phpcmsV9升级至php7.1,中间踩过一些坑,这里列出来给大家参考下。
1. 迁移至php7.1+mysql5.6+nginx的修改项目
已修改 : /phpcms/libs/classes/checkcode.class.php
已修改 : /phpcms/libs/classes/db_factory.class.php
已增加 : /phpcms/libs/classes/db_mysqli.class.php
已修改 : /phpcms/libs/classes/model.class.php
已修改 : /phpcms/libs/classes/template_cache.class.php
已修改 : /phpcms/libs/classes/update.class.php
已修改 : /phpcms/libs/functions/global.func.php
已修改 : /phpcms/modules/admin/cache_all.php
已修改 : /phpcms/modules/content/fields/editor/output.inc.php
已修改 : /phpcms/modules/content/fields/title/output.inc.php
2. 函数htmlspecialchars()在php7下严格校验编码,导致空白,修改为new_html_special_chars()方法:
已修改 : /phpcms/modules/content/fields/content_form.class.php
已修改 : /phpcms/modules/content/fields/omnipotent/field_edit_form.inc.php
已修改 : /phpcms/modules/content/fields/textarea/field_edit_form.inc.php
已修改 : /phpcms/modules/yp/fields/omnipotent/field_edit_form.inc.php
已修改 : /phpcms/modules/yp/fields/textarea/field_edit_form.inc.php
已修改 : /phpcms/modules/yp/fields/title/output.inc.php
已修改 : /phpcms/modules/yp/fields/yp_form.class.php
所有以上修改/增加的文件,均在下面压缩包中,建议下载后对比查看,不建议直接替换;
phpcmsV9升级php7修改文件 [点击直接下载]
其中global.func.php仅修改不可替换,请自行对比文件改动的地方;
3.修改database.php的type值为mysqli;
注意事项:
A.php7.1对函数参数个数严格校验,对函数形参一定要赋默认值,否则直接Fatal error: Uncaught ArgumentCountError: Too few arguments to function;
B.htmlspecialchars严格编码,以前在php5.2下正常使用的,需要修改为 new_html_special_chars() 具体函数定义见 global.func.php;
C.数据库5.6对老版本5.0的listorder-1问题,将字段设置为有符号即可;
D.伪静态规则升级,与httpd.ini变化不太大,需要逐条测试;
E.MySQL函数mysql_在php7中废弃,代之以mysqli_函数;
伪静态rewrite规则而升级遇到一个坑,就是中文url的问题,我是这么解决的:
#tags
rewrite ^(.*)/tags/?([A-Za-z]?)/(?:page([0-9]+))?/?$ $1/index.php?m=tags&c=index&a=init&letter=$2&page=$3 last;
rewrite ^(.*)/tags/?(?:page([0-9]+))?/?$ $1/index.php?m=tags&c=index&a=init&page=$2 last;
rewrite ^(.*)/tags/([^/.]+)/?(?:page([0-9]+))?/?$ $1/index.php?m=tags&c=index&a=init&tag=$2&page=$3 last;
重点看第三条,直接匹配tags/后的所有字符,然后让前两条规则优先,解决冲突的问题;经过GET打印测试,匹配完美。

本文标签:

很赞哦! ()

相关教程

相关源码

  • 自适应LED照明外贸灯具灯泡灯具英文网站模板该外贸灯具网站模板专为LED照明、灯具出口企业定制,采用PbootCMS内核开发,提供高效建站方案。通过响应式设计和SEO优化能力,帮助企业低成本构建专业外贸展示平台。查看源码
  • (PC+WAP)楼承板建筑工程合金钢铁材料pbootcms网站源码下载为楼承板生产商及建筑工程企业设计的响应式网站模板,采用PbootCMS内核开发,同步适配电脑与移动设备浏览。通过模块化结构展示工程案例、产品参数等专业内容,帮助建筑建材企业建立标准化数字展示平台,提升行业专业形象。查看源码
  • (自适应响应式)高端家用办公家具家居桌椅pbootcms模板下载为办公家具企业设计的响应式网站模板,涵盖产品展示、案例呈现、企业介绍等核心模块。通过可视化后台可快速发布实木桌椅、系统家具、办公屏风等产品信息,帮助客户直观了解材质参数与空间搭配方案。查看源码
  • (自适应响应式)陶瓷研磨盘抛光机械设备pbootcms网站模板本模板基于PbootCMS系统开发,为研磨抛光设备制造企业设计,特别适合陶瓷研磨盘、抛光设备等表面处理设备展示。采用响应式布局技术,确保各类设备的参数和工艺在不同终端上都能清晰呈现。查看源码
  • (PC+WAP)玻璃钢不锈钢钢材环保设备pbootcms网站模板采用PbootCMS内核开发的响应式网站模板,为玻璃钢环保设备制造、不锈钢钢材贸易企业设计,适配产品展示及企业服务场景。通过自适应技术实现PC与WAP端数据实时同步查看源码
  • 自适应新闻资讯技术博客个人网站pbootcms模板该模板基于PbootCMS开源内核深度开发,该模板适用于游戏新闻网站、游戏博客等企业或个人网站,新闻资讯技术博客pbootcms模板;采用六级分辨率断点适配技术查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐