首页 > 解决方案 > php 7.4 xampp 尝试访问 null 类型值的数组偏移量

问题描述

在我使用 xampp 之前,我使用 lravel 7 项目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

并且总是得到上述错误我的大部分程序都包含在上面的代码中,它们是处理函数,现在大部分都在工作

标签: phplaravelphp-7.4

解决方案


某些键$select_names可能不在其他数组中。为其他数组定义一个默认值,就像对$select_policiesand所做的那样$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,
]

推荐阅读