0
是我所:PHP給Smarty,顯示我有一些問題,在智者顯示某些嵌套數組結果...這裏一些嵌套數組
$searchResults
- 一個數組,其中每行是一個結果集。這裏沒問題。 $searchResults[$row][users][]
- 這是我創建的嵌套數組。如果此行的搜索結果存在的用戶,我想顯示每個用戶....
所以,我們在這裏有我的Smarty代碼:
{section name=i loop=$searchResults}
{section name=j loop=$searchResults[i].users}
{$searchResults[i].users[j].firstName}
{/section}
{/section}
然而,這似乎並沒有工作對我來說......它會在我的桌子上以瘋狂的方式顯示用戶的結果,而不是放置在放置部分的相同<td></td>
之內。
更新 - 使用每個,有更多的代碼...
{section name=i loop=$searchResults}
<tr>
<td>{$searchResults[i].id}</td>
<td>
{if $searchResults[i].users}
{foreach from=$searchResults[i].users item=user}
{$user.firstName} {$user.lastName} <br>
{/foreach}
{/if}
</td>
</tr>
{/section}
這會顯示這樣一個表:
ID
ID
ID
Bob Boberton
John Appleton
Chris Cooley
Carl Agley
Cynthia Nobody
當它應該是這樣的:
ID Bob Boberton
John Appleton
ID Chris Cooley
ID Carl Agley
Cynthia Nobody
這是*精確*聰明的代碼?什麼是瘋狂的輸出?使用該循環,它將逐個打印每個用戶名,而不會使用空格或格式。 – drew010
該循環看起來是正確的,但有時我看到該部分的行爲奇怪,你可以用{foreach}標籤重現它嗎? – Scuzzy
@ drew010「瘋狂」的部分是,所有的行繼續正常顯示/打印,然後我有很多隻有循環數據(每行1個)的空白行。這對我來說毫無意義。 – Shackrock