laravel - ErrorException:未定义的偏移量:0
问题描述
在我的数组推送中,如果它们具有相同的日期,我想连接 2 个数据
$goal = Goal::where('employee_id',Auth::user()->employees->first()->id)
->with('accomplishments')->orderBy('date','asc')->get();
$next_week = $goal->whereBetween('date',[$add_start_date,$add_end_date]);
$last_week = $goal->whereBetween('date',[$sub_start_date,$sub_end_date]);
$goals = [];
$date = "";
for ($i=0; $i < count($next_week); $i++) {
if($next_week[$i]['date']==$date){
$goals[$i-1]['activity'] = $goals[$i-1]['activity'] .', '. $next_week[$i]['activity'];
continue;
}
array_push($goals,$next_week[$i]);
$date = $next_week[$i]['date'];
}
解决方案
在 laravel 集合上使用过滤时,索引会丢失,要重新索引结果数组,请使用“值”:
$next_week = $goal->whereBetween('date',[$add_start_date,$add_end_date])->values();
$last_week = $goal->whereBetween('date',[$sub_start_date,$sub_end_date])->values();
推荐阅读
- haskell - 构建树中所有分支的列表
- amazon-web-services - 如何在 AWS 上自动扩展 Cassandra 集群或如何根据负载动态连接到集群
- reactjs - 在 history.push 之后中继 fetchQuery 不起作用,但在手动刷新时可以正常工作
- javascript - Counting letters and numbers in string
- c# - 如何读取和显示文本文件中的所有数据
- laravel - 如何解决这个 unserialize(): ErrorCache/FileStore.php:187
- scala - 从 spark 数据帧或 RDD 生成键值对,键中存在列名
- java - 当数据中心中的所有联系点在 cassandra 中发生故障时会发生什么
- android - 在 Kotlin 中使用星形投影作为超类型
- google-cloud-run - 容器无法启动。无法启动并监听 PORT 环境变量定义的端口