在 odt 模板中嵌套 foreach
Nested foreach in odt Templates
我正在改造一个创建报告的时间管理工具。
数据被写入 .odt 文件。数据看起来像这样:
Projects 数组包含一个 Users 数组。 Users数组保存一个days数组,days数组保存一个times数组。
我有一份报告输出
项目名称
日期
用户
时间
评论
$time['date']
$user['name']
$time['sum']
foreach($time as $t){$t['comment']}
这通过 .odt 中的多个 foreach 循环工作 table
{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 天
用户 1
次数总和
第 2 天每次参赛的评论
第三天
用户 1
次数总和
第 3 天每次参赛的评论
第 1 天
用户 2
次数总和
第 1 天每次参赛的评论
我希望输出看起来像这样:
项目名称
日期
用户
时间
评论
第 1 天
用户 1
次数总和
第 1 天每次参赛的评论
第 1 天
用户 2
次数总和
第 1 天每次参赛的评论
第 2 天
用户 1
次数总和
第 2 天每次参赛的评论
第 2 天
用户 2
次数总和
第 2 天每次参赛的评论
是否有一种简单的方法可以在 .odt foreach 循环中完成此操作?
我宁愿避免为这个特定报告修改整个数据设置。
我通过添加一个额外的子数组来完成它,该子数组根据日期保存所需的数据。在那里,我每天都有一个 WokingUsers 数组,以及相应的时间。
我正在改造一个创建报告的时间管理工具。 数据被写入 .odt 文件。数据看起来像这样:
Projects 数组包含一个 Users 数组。 Users数组保存一个days数组,days数组保存一个times数组。
我有一份报告输出
项目名称
日期 | 用户 | 时间 | 评论 |
---|---|---|---|
$time['date'] |
$user['name'] |
$time['sum'] |
foreach($time as $t){$t['comment']} |
这通过 .odt 中的多个 foreach 循环工作 table
{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 天 | 用户 1 | 次数总和 | 第 2 天每次参赛的评论 |
第三天 | 用户 1 | 次数总和 | 第 3 天每次参赛的评论 |
第 1 天 | 用户 2 | 次数总和 | 第 1 天每次参赛的评论 |
我希望输出看起来像这样:
项目名称
日期 | 用户 | 时间 | 评论 |
---|---|---|---|
第 1 天 | 用户 1 | 次数总和 | 第 1 天每次参赛的评论 |
第 1 天 | 用户 2 | 次数总和 | 第 1 天每次参赛的评论 |
第 2 天 | 用户 1 | 次数总和 | 第 2 天每次参赛的评论 |
第 2 天 | 用户 2 | 次数总和 | 第 2 天每次参赛的评论 |
是否有一种简单的方法可以在 .odt foreach 循环中完成此操作? 我宁愿避免为这个特定报告修改整个数据设置。
我通过添加一个额外的子数组来完成它,该子数组根据日期保存所需的数据。在那里,我每天都有一个 WokingUsers 数组,以及相应的时间。