phpcms切换到php7.2后无法修改文章提示Uncaught Error: [] operator not supported for strings

时间:2022-07-08 14:19:43

  前段时间将客户的phpcms站点升级到php7.2,相对比较顺利,但是今天他反应文章无法修改了,提示Uncaught Error: [] operator not supported for strings 错误,这就有点尴尬了,可能是PHP7以上对语法要求比较严谨,那我们就照着错误提示来寻找解决方案

Fatal error: Uncaught Error: [] operator not supported for strings in
*****\phpcms\modules\admin\classes\push_api.class.php:145 Stack trace: #0
*****\phpcms\modules\admin\classes\push_api.class.php(50): push_api->position_list(Array, Array, 0, 'content_model') #1
*****\caches\caches_model\caches_data\content_update.class.php(62): push_api->position_update(4, 1, 14, Array, Array, 0) #2
*****\caches\caches_model\caches_data\content_update.class.php(18): content_update->posid('posids', Array) #3
*****\phpcms\model\content_model.class.php(303): content_update->update(Array) #4
*****\phpcms\modules\content\content.php(221): content_model->edit_content(Array, 4) #5
*****\phpcms\libs\classes\application.class.php(31): content->edit() #6
*****\phpcms\libs in
*****\phpcms\modules\admin\classes\push_api.class.php on line 145

  打开/phpcms/modules/admin/classes/push_api.class.php,大概在约 141行,

$fields_arr = $fields_value = '';

  将它改为

$fields_arr = $fields_value = [];

  保存,上传,覆盖文件,重新编辑一下文章看看,这次果然可以了