好的, 我是XML和OpenTBS的新手,所以这个块等概念对我来说非常混乱,当我认为我有它的要点时,我的客户要求我更多。 我有一个客户及其项目表,客户需要一个单独的docx,每个客户重复一个包含表格中项目的模板。
我认为它适用于整个docx模板在“块”中,并且该表是“子块”,模板的其余部分使用来自块的数据,并且表使用来自子块。
这是我感到困惑的地方。
如何迭代数组(包含客户信息),当子块需要特定客户的信息时,从items数组中绘制?
对我来说,TinyButStrong附带的“手册”还不够好,但我相信你们会知道在哪里指点我。
简化数组:
$customer = array(
array("id" => 1,
"name" => "Foo Bar",
"email" => "foo@bar.com",
"itemsinfo" => array(
"itemid" => array(
"itemname" => "name"
)
)
),
array("id" => 2,
"name" => "Foo2 Bar2",
"email" => "foo2@bar2.com",
"itemsinfo" => array(
"itemid" => array(
"itemname" => "name"
)
)
)
);
非常感谢。
答案 0 :(得分:1)
感谢您添加阵列结构。这应该适用于OpenTBS。
所以假设你有类似的东西:
<w:body>[customers;block=w:body;]
Customer Name: [customers.name;]
</w:body>
为了从customers数组中获取嵌套信息,您可以这样做:
<w:body>[customers;block=w:body;sub1=itemsinfo]
Customer Name: [customers.name;]
Customer Items:
<w:table>
<w:tr>
<w:td>[customers_sub1.itemname;block=w:td;]</w:td>
</w:tr>
</w:table>
</w:body>
这会导致w:td为itemsinfo数组中的每个项重复 - 可能不是你想要的行为,但希望足以让你再次前进。这本手册非常有用,但不幸的是,在你已经理解之后它会更有意义......