odt 模板中的嵌套 foreach

问题描述

我正在改造一个创建报告的时间管理工具。 数据写入 .odt 文件。数据看起来像这样:

Projects 数组包含一个用户数组。用户数组包含一个 days 数组,days Array 包含一个 times 数组。

我有一份报告输出

项目名称

日期 用户 时间 评论
$time['date'] $user['name'] $time['sum'] foreach($time as $t){$t['comment']}

这通过 .odt 表中的多个 foreach 循环起作用

{foreach($projects as $project):}
    {$project['name']}
    {foreach($aProject['users'] as $aUser):}
        {foreach( $aUser['days'] as $aDay ):}
            {$aDay['date']}  | {$aUser['name']} |{$aDay['sum']} h | 
            {foreach($aDay['comment'] as $comment):}
                {$comment['comment']}
            {endforeach}    
        {endforeach}
    {endforeach}
{endforeach}

输出看起来像这样: 项目名称

日期 用户 时间 评论
第一天 用户 1 时间总和 来自第 1 天每个时间条目的评论
第二天 用户 1 时间总和 来自第 2 天每个时间条目的评论
第3天 用户 1 时间总和 第3天每次条目的评论
第一天 用户 2 时间总和 来自第 1 天每个时间条目的评论

我希望输出看起来像这样:

项目名称

日期 用户 时间 评论
第一天 用户 1 时间总和 来自第 1 天每个时间条目的评论
第一天 用户 2 时间总和 来自第 1 天每个时间条目的评论
第二天 用户 1 时间总和 来自第 2 天每个时间条目的评论
第二天 用户 2 时间总和 来自第 2 天每个时间条目的评论

是否有一种简单的方法可以在 .odt foreach 循环中完成此操作? 我宁愿避免为此特定报告重新设置整个数据。

解决方法

我通过添加一个额外的子数组来完成它,该子数组根据日期保存所需的数据。在那里,我每天都有一个 WokingUsers 数组,以及相应的时间。