猛牛哥
记录网络点滴生活

升级php7.1.*后phpcms V9编辑文章出错的解决方法

这两天服务器环境升级了php到7.1.*,然后使用phpcms V9添加或编辑文章时都会遇到500错误。查看error_log文件,看到一堆Illegal string offset '**' | phpcms/libs/classes/segment.class.php | 345这样的错误。查看segment.class.php 文件的345行,附近的代码是:

看来问题出在$wks这个变量上(字符串变量直接当数组使用)。查看前面的代码,$wks的赋值是:$okstr = $wks = ''; ,后来通过搜索得知:PHP7开始,对于数据类型的隐式转换做了调整,String无法隐式转换成Array了。

所以,问题就出在$wks一开始是字符串,后面的代码又直接把他当数组用,再新版PHP中就会出错。所以解决方法应该是在344行前面增加一行:if($wks=="") $wks=array();

经过测试,此方法有效。

赞(0) 打赏
猛牛哥原创:猛牛哥的博客 » 升级php7.1.*后phpcms V9编辑文章出错的解决方法

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏