2017-07-27 44 views
0

我有一個這樣的數組:搜索在陣列,並得到另一個值

//the result of `dd()` function in laravel 

Collection {#401 ▼ 
    #items: array:2 [▼ 
    0 => {#400 ▼ 
     +"tutorial_package_count": 2 
     +"tutorial_package_id": 1 
     +"tutorial_id": 1 
    } 
    1 => {#402 ▼ 
     +"tutorial_package_count": 1 
     +"tutorial_package_id": 2 
     +"tutorial_id": 2 
    } 
    ] 
} 

假設我有一個變量$tutorial_id = 1, 現在我想要得到的tutorial_package_count值。在這裏我想要2

我不想使用循環。

+0

您使用的口才?在這種情況下:where('tutorial_id',1) –

回答

2

在這種情況下,你可以使用可collectionsfilter方法:

$filtered = $collection->filter(function ($value, $key) use($tutorial_id) { 
    return $value['tutorial_id'] == $tutorial_id; 
}); 
$firstMatch = $filtered->first();