foreach循環的{$key}鍵值,為什么都是最后那一個數組的鍵值
傳去模版的變量數組
$list?=?[
"user1"?=>["username"=>"1","email"?=>?"123"],
"user2"?=>["username"=>"2","email"?=>?"456"],
"user3"?=>["username"=>"3","email"?=>?"789"]
];
模版的foreach
{foreach?$list?as?$k?}
?????<p>{$key}</p>
{/foreach}
結果
user3:1:123
user3:2:456
user3:3:789
然后那個{$key}?循環了三次,為什么鍵值都是user3
而不是user1?user2?user3
2017-10-15
{foreach?$list?as?$k?} 首先樓主需要注意的是:$k輸出的是一個值,而其默認的鍵值是從0開始的,假如需要鍵值是user1、user2、user3的話那么需要把鍵值也顯示出來:
像這樣的:
{foreach $list as $key=>$v}
<p>{$key}</p>
{/foreach}
或者是這種方式也是可以的:
{foreach name="list" item="k"}
<p>{$key}</p>
{/foreach}
2017-10-08
如果你要使用$key,那么必須使用:
{foreach name="list" item="k"}
<p>{$key}</p>
{/foreach}