Laravel 使用Get查找值或返回默认值

示例

您经常会发现自己需要找到一个与值相对应的变量,而集合却使您无所适从。

在下面的示例中,我们在数组中获得了三个不同的语言环境,并分配了相应的调用代码。我们希望能够提供一个语言环境,并获得相关的调用代码。get如果找不到第一个参数,则第二个参数是默认参数。

function lookupCallingCode($locale)
{
    return collect([
        'de_DE' => 49,
        'en_GB' => 44,
        'en_US' => 1,
    ])->get($locale, 44);
}

在上面的示例中,我们可以执行以下操作

lookupCallingCode('de_DE'); // 将返回49
lookupCallingCode('sv_SE'); // 将返回44

您甚至可以将回调作为默认值传递。如果指定的键不存在,则将返回回调结果:

    return collect([
        'de_DE' => 49,
        'en_GB' => 44,
        'en_US' => 1,
    ])->get($locale, function() {
        return 44;
    });