你可以用缓存
ob_start();
$tpl->display('xd_3.tpl');
ob_end_clean()

解决方案 »

  1.   

    这个方法我用了,我想生成静态的页面但每次跳转时都把页面内容显示一下才跳转,我不想让他显示
      ob_start();
      $tpl -> display('xd_3.tpl');//显示模板
      $buffer = ob_get_contents();
      $path="../new/".$arr[date];
      mkdir($path,"0777");
      $fp = fopen("$path/$arr[id].html","w");
      fwrite($fp,$buffer);
      $buffer="";
      ob_end_flush();
      fclose($fp);
     echo "<META HTTP-EQUIV=Refresh CONTENT='0;url=new_list.php?id=$_GET[node_id]'>";
      

  2.   

    把生成静态页面的程序存放在一个文件中,action到这个文件就行了
      

  3.   

    看这边的例子即可
    http://smarty.php.net/manual/en/api.fetch.php
    不用使用ob
    ---
    另,用ob的时候用ob_end_clean()代替ob_end_flush()即可不显示一下