**问题:**php在运行时报错Trying to a***ess array offset on value of type null
原因分析:
这个报错的意思是:尝试访问类型为 null 的值的数组偏移量,就是说有个变成为nul导致了报错。php版本为7.4的时候才出现了这个错误。
新版php解释器会对null类型的下标访问直接报错。例如:
$b = NULL;
$a = $b['key'] ? $b['key'] : 0;
上面这个语句,$b,为 null 的时候就报错了。
解决方案有两种:
**方案一:**降低PHP版本,可以尝试将PHP版本降到7.4以下,问题就是自动消失。
**方案二:**修改代码
例如,可以将
$b = NULL;
$a = $b['key'] ? $b['key'] : 0;
修改为:
$b = NULL;
$a = isset($b['key']) && !empty($b['key']) ? $b : 0;(加多一个判断就可以了。)