2013-03-22 49 views
0

所以這是我的foreach循環使用的foreach循環的智者

foreach($statusMessageResult as $row){ 
    $row['username']=$db->getUsername($db->getUserNameById($row['posterID'])); 
    $results[] = $row; 
    echo "Status from: " . $row['username'] . " ID: " . $row['statusID'] . "<br>" . $row['dateTime']; 
} 

沒有問題的其中一期工程。但是現在我想要聰明地擁有同樣的東西。 所以我想我要做到這一點在PHP文件

$smarty->assign('results', $results); 

,這在.html文件

{foreach from=$results item=statusID} 
    id: {$statusID}<br> 
{/foreach} 

但它告訴我

Notice: Array to string conversion in F:\xampp\htdocs\FinalYear\smarty\templates_c\ab89063f543bf0a8fe20c45b89aad63b616cd7c5.file.home.html.php on line 86 
Array 

嘛問題似乎很清楚:我有一個數組,並希望將它用作字符串,但這是不允許的。但我該如何解決它?

回答

2

試試這個:

{foreach from=$results item=result} 
    id: {$result.statusID}<br> 
{/foreach} 

如果希望用戶名:{$result.username}

編號:http://www.smarty.net/docsv2/en/language.function.foreach

+0

id:{$ result.statusID | stripslash es} – 2013-03-22 12:59:46

+0

@DeppG:這真的需要嗎?這通常是一個Db中的int字段嗎? – 2013-03-22 13:00:50

-1

$statusID似乎是一個數組:)

改變

{foreach from=$results item=statusID} 
    id: {$statusID}<br> 
{/foreach} 

{foreach from=$results item=statusID} 
    id: {$statusID['statusID']}<br> 
{/foreach} 

應該解決它

0

statusID是一個數組,通過像鍵名獲得價值即:

{foreach from=$results item=statusID} 
    id: {$statusID.username}<br> 
{/foreach} 
+0

ID:{用戶名}是沒有意義的,我覺得他想要的ID ;) – EaterOfCode 2013-03-22 12:55:27

+0

沒問題:'{foreach from = $ results item = user} id:{$ user.statusID}
{/ foreach}' – mkjasinski 2013-03-22 13:01:14