Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Smarty PHP/模板输出问题_Php_Templates_Smarty - Fatal编程技术网

Smarty PHP/模板输出问题

Smarty PHP/模板输出问题,php,templates,smarty,Php,Templates,Smarty,我无法将此输出到第页 for ( $i = 0; $mainarray[$i] != ''; $i++ ){ $query = mysql_query("SELECT ... FROM ... WHERE id=$i") or die(mysql_error()); while($tmp = mysql_fetch_assoc($query)) { $something[] = $tmp; } $smarty->assign('stuff'.$i, $something);

我无法将此输出到第页

for ( $i = 0; $mainarray[$i] != ''; $i++ ){ 
$query =  mysql_query("SELECT ... FROM ... WHERE id=$i") or die(mysql_error());
while($tmp = mysql_fetch_assoc($query))
{
    $something[] = $tmp;
}
$smarty->assign('stuff'.$i, $something); 
  }
我可以像你一样做这件事

{section name=i loop=$stuff1}
.....
{/section}
{section name=i loop=$stuff2}
.....
{/section}
但这不是很好的方法。

把你的“东西”放进一个数组怎么样

$stuff = arrray();
for ( $i = 0; $mainarray[$i] != ''; $i++ ){ 
    $query =  mysql_query("SELECT ... FROM ... WHERE id=$i") or die(mysql_error());
    while($tmp = mysql_fetch_assoc($query))
    {
        $something[] = $tmp;
    }
    $stuff[] = $something;
}

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

然后,您就可以循环模板中的内容。

看起来您可能希望在php代码中使用多维数组,在smarty中使用嵌套循环

我已经有一段时间没有使用php/smarty了,所以这个语法可能不正确

$stuff = array();
foreach ($mainarray as $i) {
    $query =  mysql_query("SELECT ... FROM ... WHERE id=$i") or die(mysql_error());
    $something = array();
    while($tmp = mysql_fetch_assoc($query)) {
        $something[] = $something;
    }
    $stuff[] = $something;
}
$smarty->assign('stuff', $stuff);
在smarty中,需要一个嵌套循环。我可能会破坏smarty语法,但这似乎是一个类似的问题: