0

我使用 PEAR ITX 添加模板。我的问题是,前 2 次 ($number>2) 条件匹配并且 $fileName2 添加成功,按预期阻止显示;但是当第三次 ($number==2) 条件匹配但 $fileName1 似乎无法加载时,它不会显示任何内容。这是我的示例代码:

$template = new HTML_Template_ITX("./templates");
$template->loadTemplatefile($maintemplate,true,true);

while($row = mysql_fetch_array($result))
{
    if($number==2)
    {
        $template->addBlockFile("CANDIDATES","CAN",$fileName1);|
        $template->setCurrentBlock("CAN");
        //do anything i need
    }else if($number>2) //first 2 times condition match, everything works well
    {
        $template->addBlockFile("CANDIDATES","CAN",$fileName2);
        $template->setCurrentBlock("CAN");
        //do anything i need
    }

    $template->setCurrentBlock("MAIN");
$template->parseCurrentBlock();
}

情况可以相反,如果第一次条件匹配($number==2),那么第三次条件匹配($number>2)但问题仍然存在。

我发现的是replaceBlockfile(),我试过但没有用。任何人都可以告诉我这是什么问题?谢谢你。

4

1 回答 1

0

似乎没有人可以回答我的问题,但我已经弄清楚了问题所在。在我的问题中,每次循环都使用相同的 $template,因为 $template 在循环之外。我需要做的是把:

$template = new HTML_Template_ITX("./templates");
$template->loadTemplatefile($maintemplate,true,true);

在while循环中,意味着每次循环都会创建一个“新”表。

于 2013-04-27T10:13:47.890 回答