$view = new Smarty();
$content =$view->fetch('tpl.index.html',null,null,false);
$fp = fopen('news.html', 'w'); 
fwrite($fp, $content); 
fclose($fp); 
现在的问题是可以生成news.html页面,但是 所有程序循环的部分!是没有显示的这个要怎么解决呢!?
麻烦大家能帮忙说说看下吗?多谢了!

解决方案 »

  1.   

    foreach /
    section 
    循环输出!
      

  2.   

    ob_start()'
    $view = new Smarty();
    $view->display('tpl.index.html');
    $content =ob_get_contents();
    $fp = fopen('news.html', 'w');
    fwrite($fp, $content);
    fclose($fp); 
      

  3.   

    3楼的 朋友 您的方法 我没测试成功我原来的方法 我倒是找到了 哪错了在$content =$view->fetch('tpl.index.html',null,null,false);
    $fp = fopen('news.html', 'w');
    fwrite($fp, $content);
    fclose($fp); 前面把
    需要解析的变量 
    $view->assign('treeList', $treeList);
        $view->assign('newslists',  $newslist);
        $view->assign('downlists',  $downlist);
    下就可以了$view->assign('treeList', $treeList);
        $view->assign('newslists',  $newslist);
        $view->assign('downlists',  $downlist);
        
        $content =$view->fetch('tpl.index.html',null,null,false);
        $fp = fopen('news.html', 'w'); 
       fwrite($fp, $content); 
       fclose($fp); 
    能实现我要的功能但是 想问下
    这是访问了这页之后 才能生成这个静态页我现在想问如果是  那种在后台批量更新静态页的话这个 是怎么实现的啊?谁能说说思路吗!?
    多谢了
      

  4.   

    你的驱动模块都没有写,,,计算机程序怎么知道你要干嘛啊???
    要先assigned。
      

  5.   

    怪不得, 像楼主你这样写法, 不但循环没成功, 而是所有变量设置都没效果, 
    因为你没把assign里的变量填进smarty模板, 
    要把所有你模板的变量assign后才fetch, 也就是说在display之前一行写fetch就最好险
    三楼的写法是对, 只不过三楼忽略了assign, 因为他不知道你没设置assign
      

  6.   

    可以写一个PHP脚本放进crontab里面定时执行~~
      

  7.   

    it is userful for me~thanks~