【技术实现步骤摘要】
代码参数的检测方法、装置、存储介质及电子设备
[0001]本专利技术涉及计算机
,具体而言,涉及一种代码参数的检测方法、装置、存储介质及电子设备。
技术介绍
[0002]目前,php(Hypertext Preprocessor,超文件预处理器,一种通用开源脚本语言)编程语言越来越严格,升级时面临兼容性问题,在兼容性问题中的传递参数过少的情况下,在php7.0版本中传递参数过少时无影响,但是在php7.1及以上版本时,传递参数过少时会报错。传递参数过少时报错的情况,如:定义时有一个参数$param,在该定义中$param没有默认值,但是调用时不传该默认值就会报错,会出现致命错误(如:Fatal error),具体如:Fatal error:Uncaught ArgumentCountError:Too few arguments to function test(),0passed in%s on line%d and exactly 1expected in%s:%d。但是,如果写了默认值(如:function te ...
【技术保护点】
【技术特征摘要】
1.一种代码参数的检测方法,其特征在于,包括:响应对目标编程代码的参数检测请求,提取所述目标编程代码中多个目标类,其中,所述参数检测请求用于检测所述目标编程代码中是否存在导致代码运行出错的缺失参数,所述缺失参数为所述目标编程代码对历史版本代码进行版本升级后缺失的参数,所述目标类为所述目标编程代码中进行参数检测的类;对每个所述目标类中的函数进行识别,得到多个函数,并确定每个所述函数中的第一参数数据,其中,所述第一参数数据为每个所述函数在所述目标编程代码进行版本升级后不存在缺失参数的数据,所述第一参数数据至少包括:所述函数的必填参数数据;基于每个所述函数中的所述必填参数数据和字符串匹配策略,确定所述目标编程代码的参数检测结果,其中,所述字符串匹配策略用于确定每个所述函数中的实际参数数据。2.根据权利要求1所述的检测方法,其特征在于,对每个所述目标类中的函数进行识别,得到多个函数,并确定每个所述函数中的第一参数数据,包括:通过第一反射对每个所述目标类进行反射,得到每个所述目标类中的多个所述函数;通过第二反射对每个所述函数进行反射,得到每个所述函数中的目标参数集合,其中,所述目标参数集合包括所述函数在不缺少参数情况下的所有参数;基于每个所述函数中的目标参数集合,统计每个所述函数中的所述第一参数数据。3.根据权利要求2所述的检测方法,其特征在于,在基于每个所述函数中的目标参数集合,统计每个所述函数中的所述第一参数数据之后,还包括:基于每个所述函数的函数标识,统计多个所述函数中的重复函数;判断所述重复函数的必填参数数据是否相同,得到判断结果;在所述判断结果指示所述重复函数的所述必填参数数据不相同的情况下,输出所述重复函数;将所述重复函数发送至目标对象操控的对象终端中,由所述对象终端对所述重复函数进行参数检测。4.根据权利要求1所述的检测方法,其特征在于,所述字符串匹配策略至少包括:目标字符组合,基于每个所述函数中的所述必填参数数据和字符串匹配策略,确定所述目标编程代码的参数检测结果,包括:统计每个所述函数中包含所述目标字符组合的数据,得到每个所述函数的第二参数数据,其中,所述第二参数数据为待检测的每个所述函数的实际参数数据;通过每个所述函数的所述第二参数数据与所述必填参数数据比较,确定所述目标编程代码的参数检测结果。5.根据权利要求4所述的检测方法,其特征在于,所述目标字符组合至少包括:括号与目标标点符号的组合,统计每个所述函数中包含所述目标字符组合的数据,得到每个所述函数的第二参数数据,包括:识别每个所述函数中存在所述括号与所述目标标点符号的目标代码;基于所述目标代码中所述目标标点符号的个数,统计所述目标代码关联...
【专利技术属性】
技术研发人员:黄俞荣,唐春鸽,宋永政,王振,吴意乐,
申请(专利权)人:山石网科通信技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。