PHP 7.4 xampp尝试访问类型为null的值的数组偏移量

问题描述

我正在使用Lravel 7项目 在我以前使用过xampp 7.3.21 / PHP 7.3.21之前,一切都很好 我将其升级为xampp 7.4.9 / PHP 7.4.9,我得到了
Trying to access array offset on value of type null 
在我大部分的时间里 这是例子
public function show
(
    $id,// selects
        $selects_names,$selects_languages,$selects_models,$selects_policies,$selects_types,$selects_ranks,// end selects
)
{
    return view('curd.show',compact
    (
        'id'
        // select
            'selects_names','selects_languages','selects_models','selects_policies','selects_types','selects_ranks',// end selects
    ));
}

这是刀片服务器代码

    @if($selects_names)
    @foreach($selects_names as $key => $selects_name)
        @include(
            'treats.show_selects',[
                'name' => $selects_name,'language' => $selects_languages[$key],'model' => $selects_models[$key],'policy' => $selects_policies[$key]  ?? null,'show_type' => $selects_types[$key],'rank' => $selects_ranks[$key] ?? null,]
        )
    @endforeach
@endif

,并始终出现上述错误 我的程序大部分都包含在上面的代码中,它们是Treate函数,现在大部分都可以使用

解决方法

$select_names中的某些键可能不在其他数组中。 为$select_policies$select_ranks定义其他数组的默认值:

[
    'name' => $selects_name,'language' => $selects_languages[$key] ?? '','model' => $selects_models[$key] ?? null,'policy' => $selects_policies[$key]  ?? null,'show_type' => $selects_types[$key] ?? null,'rank' => $selects_ranks[$key] ?? null,]