laravel - 过滤集合的克隆会影响另一个克隆
问题描述
我正在尝试从一个系列中制作多个系列。我所做的是过滤和映射集合的克隆:
$nutrients = $this->get_records_daily_average($request);
// Make & filter first copy
$Vitamins = clone $nutrients;
$Vitamins = $Vitamins->filter(function($nutrient)
{
return in_array($nutrient->id,config(("hooman.nutrient_ids.score_related.Vitamins")));
})->map(function($nutrient){
$nutrient->score_category= "Vitamins";
return $nutrient;
})->values();
//Make & Filter Another copy
$immune_support = clone $nutrients;
$immune_support = $immune_support->filter(function($nutrient)
{
return in_array($nutrient->id,config("hooman.nutrient_ids.score_related.Immune Support") );
})->map(function($nutrient){
$nutrient->score_category= "immune_support";
return $nutrient;
})->values();
return $Vitamins; //Test
// filtering other clones ...
问题是某些 $Vitamins 的 score_category 为“immune_support”,这告诉我第二个过滤器会影响前一个过滤器,而这两个克隆的集合之间没有关系。
提前致谢
解决方案
推荐阅读
- python - Py Click (8.0) flag_value 被转换为 str
- linkedin - 如何在linkedin营销api中获得r_ads_leadgen_automation权限
- sql - 使用 Case (Teradata) 的 SQL 窗口
- javascript - 从 getBoundingClientRect() 设置边距
- .net - 在 WebAPI 中使用 autofac 在运行时创建的对象中解析每个请求服务
- javascript - 使用覆盖在 ESLint 配置中设置文件扩展名
- machine-learning - Pytorch 自定义模型自动存储在 cuda 中
- linq - .NET Core 的 SQL 转换为 Linq 转换
- python - 如何禁用第二个窗口?
- swift - 在 SwiftUI 中,如何在视图中分配变量?