我有一个Laravel集合,其中每个元素都有键action
,值可以是“手动”、“自动”和其他类型。我尝试获取操作
为“手动”或“自动”的所有元素。我尝试了遵循Laravel收集方法,但它没有返回任何内容。
$manualTransactions = $allTransactions
->where('action','Manual')
->where('action','Used');
但是,如果我尝试以下操作,它将返回操作
为“手动”的所有元素;如果我将“手动”替换为“已使用”,它将返回操作
为“已使用”的所有元素
$manualTransactions = $allTransactions
->where('action','Manual');
问:如何获取所有元素,其中action
是手动或使用?我看到Laravel收集方法,但我没有发现像或在哪里方法。
您可以使用where():
$allTransactions->whereIn('action', ['Manual', 'Used']);
或filter():
$allTransactions->filter(function ($item) {
return in_array($item->action, ['Manual', 'Used']);
});
以上假设$item
是一个对象,如果它是一个数组,请使用$item['action']
。