我有循环,在删除之后迭代集合并查找状态= 1的对象。
如何在Laravel中的集合函数上重写此代码?
$announcements->every(function ($value) use ($announcements) {
foreach($value->offers as $k => $v) {
if ($v->status == 1) {
unset($value->offers[$k]->publisher);
}
}
});
答案 0 :(得分:1)
实际上every() method检查集合中的所有项是否都返回true。您应该使用each() method来循环浏览所有项目并单独检查它们。
此外,如果您想从集合中删除某些项目,可以使用filter() method:
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(customUserDetailsService).passwordEncoder(getPasswordEncoder());
}
@Bean(name="encoder")
private BCryptPasswordEncoder getPasswordEncoder(){
return new BCryptPasswordEncoder();
}