好的,这让我很头疼,因为它没有任何意义。我有一个从 php 分配的数组,其中包含 15 个字符串,如下所示。
Array (
[0] => 001
[1] => 002
[2] => 003
[3] => 004
[4] => 005
[5] => 006
[6] => 007
[7] => 008
[8] => 009
[9] => 010
[10] => 011
[11] => 012
[12] => 013
[13] => 014
[14] => 015
)
在我的模板中,我试图将填充的数字分配给一个字符串并输出该值。除非它不能 100% 工作。在循环中的第一次分配中,该值不存在,但在随后的分配中,它使用前一个循环中的值 value。
这是代码
{foreach from=$faq item="qNumber" key="qKey"}
{$qNumber} - {$qKey} -
{assign var="qQuestion" value="help_faqQuestion$qNumber"}
{$qQuestion}
<br />
{/foreach}
我的输出如下所示:
001 - 0 - help_faqQuestion
002 - 1 - help_faqQuestion001
003 - 2 - help_faqQuestion002
004 - 3 - help_faqQuestion003
005 - 4 - help_faqQuestion004
006 - 5 - help_faqQuestion005
007 - 6 - help_faqQuestion006
008 - 7 - help_faqQuestion007
009 - 8 - help_faqQuestion008
010 - 9 - help_faqQuestion009
011 - 10 - help_faqQuestion010
012 - 11 - help_faqQuestion011
013 - 12 - help_faqQuestion012
014 - 13 - help_faqQuestion013
015 - 14 - help_faqQuestion014
有谁知道为什么会发生这种情况,因为我没有想法。
更新
出于某种任意原因,这可以工作并产生正确的输出,但我不明白为什么我不能在一个分配行中执行此操作。
{foreach from=$faq key="qKey" item="qNumber" }
{assign var="num" value=$qNumber}
{assign var="qQuestion" value="help_faqQuestion$num"}
<li>{$qNumber} - {$qKey} - {$qQuestion}</li>
{/foreach}