📅  最后修改于: 2023-12-03 15:32:33.097000             🧑  作者: Mango
Laravel Collection Unique 是 Laravel 框架中的一个强大的工具,用于从给定的集合中获取唯一值。该工具使得处理大量数据变得更加容易和高效。
我们可以从任何 Laravel 集合使用 unique()
来获取唯一值,例如:
$collection = collect([1, 2, 2, 3, 4, 4, 5]);
$unique = $collection->unique();
在上面的代码中,$unique
将包含唯一值 [1, 2, 3, 4, 5]
。
你也可以根据对象的某个属性去除重复项。例如:
class User
{
public $name;
public $email;
public function __construct($name, $email)
{
$this->name = $name;
$this->email = $email;
}
}
$users = collect([
new User('John Doe', 'john@example.com'),
new User('Jane Doe', 'jane@example.com'),
new User('John Doe', 'john@example.com')
]);
$unique = $users->unique('email');
上面的代码中通过 email
去除了 $users
中的重复项。
Laravel Collection Unique 可以接受一个回调函数,该函数会对集合中的每个项进行处理,你可以根据这个回调函数的返回值来去除重复项。例如:
$products = collect([
['name' => 'Desk', 'price' => 200],
['name' => 'Chair', 'price' => 100],
['name' => 'Desk', 'price' => 300],
['name' => 'Chair', 'price' => 150],
]);
$unique = $products->unique(function ($product) {
return $product['name'] . $product['price'];
});
在上面的代码中,我们根据 $product
中的名称和价格来处理每个项。
Laravel Collection Unique 是 Laravel 集合中的一个非常实用的工具,可以方便地去除重复值并支持自定义去重规则。无论是处理大量数据还是简单的去重,使用 Laravel Collection Unique 都将使你的开发工作更加容易。