我有一个记录循环,我正在解析到一个CI模板,我需要在该循环中运行一个if,但我得到的是在html中输出的字符串,有人可以告诉我我是什么做错了。
代码:
{bond}
<tr>
<td>{bond_issuer}</td>
<td>{bond_bond}</td>
<td>
{if bond_payment_frequency == 'A' }
Annual
{if:elseif bond_payment_frequency == 'SA'}
Semi Annual
{if:else}
Quarterly
{/if}
</td>
<td>{bond_coupon_pa}</td>
<td>{bond_maturity_date}</td>
<td>{bond_indicative_yield}</td>
<td>{bond_asx_code}</td>
</tr>
{/bond}
输出:
{if bond_payment_frequency ==&#39; A&#39;年度{if:elseif bond_payment_frequency ==&#39; SA&#39;}半年度{if:else}季度{/ if}
解决方案:
<?php foreach($bond as $b) {?>
<tr>
<td><?=$b->bond_issuer;?></td>
<td><?=$b->bond_bond;?></td>
<td>
<?php
if($b->bond_payment_frequency === 'A') {
echo 'Annual';
} elseif($b->bond_payment_frequency === 'SA') {
echo 'Semi Annual';
} else {
echo 'Quarterly';
};
?>
</td>
<td><?=$b->bond_coupon_pa;?></td>
<td><?=$b->bond_maturity_date;?></td>
<td><?=$b->bond_indicative_yield;?></td>
<td><?=$b->bond_asx_code;?></td>
</tr>
<?php } ?>
答案 0 :(得分:2)
关于the documentation,我认为您不能使用标准CI的模板分析器类构建条件。
您可以像使用{bond} [...] {/bond}
一样遍历数组,但我不认为您可以编写{if}
条件。
就像医生说的那样:
使用Template Parser Class可以解析视图文件中包含的伪变量。它可以解析简单变量或变量标签对。
[...]
另请注意:Template Parser Class不是一个完整的模板解析解决方案。为了保持最佳性能,我们一直非常精益求精。