0

所以这是我的 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'];
}

哪个工作没有问题。但现在我想在 smarty 上也一样。所以我想我要在 .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

那么问题似乎很清楚:我有一个数组并想将其用作字符串,这是不允许的。但是我该如何解决呢?

4

3 回答 3

2

试试这个 :

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

如果你想要用户名:{$result.username}

参考:http ://www.smarty.net/docsv2/en/language.function.foreach

于 2013-03-22T12:55:21.160 回答
0

statusID是一个数组,通过键名获取值,如下所示:

{foreach from=$results item=statusID}
    id: {$statusID.username}<br>
{/foreach}
于 2013-03-22T12:54:40.987 回答
-1

$statusID似乎是一个数组:)

改变

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

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

应该解决它

于 2013-03-22T12:54:36.607 回答