微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

odt 模板中的嵌套 foreach

如何解决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 数组,以及相应的时间。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。