您现在的位置是:首页 > 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打印测试,匹配完美。

本文标签:

很赞哦! ()

相关教程

相关源码

  • (自适应响应式)pbootcms紫色美容整形机构企业模板下载基于PbootCMS内核开发的响应式网站模板,为医疗美容机构、整形医院等企业设计,提供完整的线上展示平台采用紫色系配色方案,整体风格专业大气。模板包含首页轮播、服务项目、专家团队、案例展示等核心模块,能够充分展示医疗美容机构的专业服务和特色优势。查看源码
  • (自适应响应式)HTML5电脑手机电子数码产品配件pbootcms模板下载本模板为电脑配件、手机配件及数码周边产品企业设计,基于PbootCMS内核开发。采用现代化响应式布局,适配各类移动设备,能够专业展示各类电子产品配件参数、应用场景和技术特点。模板内置多种产品展示模块,满足不同类型配件企业的展示需求。查看源码
  • (PC+WAP)蓝色新能源环保太阳能光伏模板pbootcms下载新能源环保行业网站解决方案为太阳能光伏系统企业打造的专业网站模板,助力新能源企业高效展示产品与服务PbootCMS内核开发,源码开放可修改PC与手机端自适应设计查看源码
  • (PC+WAP)绿色环保设备环保企业网站模板源码下载基于PbootCMS内核开发的响应式企业模板,为环保设备制造、环境技术服务等企业打造,通过模块化设计实现多行业快速适配。查看源码
  • (自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码
  • (PC+WAP)聚氨酯粉末涂料防腐耐用材料粘合剂网站源码下载为化工涂料企业设计的展示系统,集成产品技术参数库、颜色样板展示器和配方查询模块。支持粉末涂料、环氧树脂等多类产品分类展示查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐