前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >水印插件上传时提示 Trying to access array offset on value of type bool 的解决办法

水印插件上传时提示 Trying to access array offset on value of type bool 的解决办法

作者头像
李洋博客
发布2021-10-11 17:01:08
2.5K0
发布2021-10-11 17:01:08
举报
文章被收录于专栏:李洋博客李洋博客

国庆前夕想着测试点功能,在上传js文件的时候,水印插件报错提示:Trying to access array offset on value of type bool,其他插件也类似这个文件,关于水印插件其实还有问题,因为这个插件最初的鸟哥写的,后期因为鸟哥不在zb了,所有我把这个插件从猪那要来了,当时是因为修改一个BUG,修改之后上架了,期间不少人找我,因为在使用的时候无效,无法选择水印模式,这个问题今天也顺便解决了,咳咳,聊正题哈,为什么会提示这个呢?

水印插件上传时提示 Trying to access array offset on value of type bool 的解决办法 第1张
水印插件上传时提示 Trying to access array offset on value of type bool 的解决办法 第1张

问题只存在PHP7+版本以上才会有,之前在 PHP 7.3中是正常运行的。由此分析得出,PHP 语言本身对于语法的规范性要求得更为严谨了的。是在php7版本中,7.4 版本的向后不兼容更改,非数组的数组样式访问,现在,尝试将 null,bool,int,float 或 resource 类型的值用作数组 ( 例如 $null[“key”] ) 会产生一个通知。

解决办法就是需要将“$tmp_info[2]”做一个判断,然后执行函数,修改之后的代码为:

if(isset($tmp_info[2])){
    if($tmp_info[2]>1 and  $tmp_info[2]<4) {
        Watermark_Do($tmp,$waterPos,$waterImage,$waterText,$textFont,$textColor,$watertype);
    }
}

修改之前记得备份,修改完成后保存代码,前台上传文章测试一切正常,未再报错,问题已解决但是仅仅针对水印插件,其他代码请自行排查,水印插件的问题已经修复了,如遇到了类似的问题请更新插件,如果是其他程序也提示报错那么请百度吧,我也搞不懂的。毕竟都了解我只是代码的搬运工,不是生产者!!!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档