牛牛在线工具

Collection::addOrReplaceOne()

收录 8868 个 PHP 函数,含用途说明与用法示例。

Collection::addOrReplaceOne()

将一个项添加到集合中或者替换集合中的一个已有项

函数名: Collection::addOrReplaceOne() 适用版本: Laravel 8.0 或更高版本 用法:该函数用于将一个项添加到集合中或者替换集合中的一个已有项。 参数: $key(字符串):要添加或替换的项的键名。 $value(任意类型):要添加或替换的项的值。 $callback(闭包函数,可选):如果指定了该参数,将使用闭包函数来决定是否替换已有项。闭包函数接受当前键名对应的已有值和要添加或替换的值,返回 true 表示替换,false 表示不替换。 返回值:无 示例代码: use Illuminate\Support\Collection; $collection = new Collection(['apple', 'banana', 'orange']); // 添加项到集合中 $collection->addOrReplaceOne('grape', 'purple'); // 替换集合中已有项 $collection->addOrReplaceOne('banana', 'yellow'); // 使用闭包函数决定项是否替换 $collection->addOrReplaceOne('orange', 'red', function ($existingValue, $newValue) { return strlen($existingValue) < strlen($newValue); }); $collection->dump(); // 输出:['apple', 'yellow', 'red', 'grape'] 以上示例中,首先使用 addOrReplaceOne() 添加了一个新的项 'grape' 到集合中。然后,使用相同的键名 'banana' 替换了集合中已有的 'banana' 项。最后,使用闭包函数判断了要替换的 'orange' 的长度是否比已有值的长度更长,最终将 'orange' 替换为了 'red'。最后一步的结果是 ['apple', 'yellow', 'red', 'grape']。