关于spHTML类方法makeAll速度慢的问题

#1 GeoMap

我用示例的makeAll,但是速度很慢,差不多需要近5分钟才能完成。我想做一个论坛,每一个帖子都会生成静态HTML文件,所以需要用到这个方法。

2014-02-25 09:28:32

#2 jake

别生成那么多,一次生成个100页就行,普通的虚拟主机一次生成个1000页也不需要1分钟。

2014-02-25 09:56:49

#3 jake

别生成那么多,一次生成个100页就行,普通的虚拟主机一次生成个1000页也不需要1分钟。

2014-02-25 09:56:53

#4 GeoMap

jake 发表于 2014-2-25 09:56
别生成那么多,一次生成个100页就行,普通的虚拟主机一次生成个1000页也不需要1分钟。 ...
就一个示例文件,在我自己的电脑上,不知道为什么为这么长时间

2014-02-25 10:16:43

#5 jake

GeoMap 发表于 2014-2-25 10:16
就一个示例文件,在我自己的电脑上,不知道为什么为这么长时间
那应该是被循环生成了,检查检查吧。就是A页面生成B页面,B页面又生成A页面这种情况。

2014-02-25 11:07:04

#6 GeoMap

jake 发表于 2014-2-25 11:07
那应该是被循环生成了,检查检查吧。就是A页面生成B页面,B页面又生成A页面这种情况。
...
我改写了一下这个方法,仅供测试,每次点击留言时,会自动生成静态页面,但是就这么一个都很慢,不知道为什么,也有可能是我电脑的问题!

function write(){ // 这里是留言
        $guestbook = spClass("guestbook");
        $newrow = array( // 这里制作新增记录的值
                'name' => $this->spArgs('name'),
                'title' => $this->spArgs('title'), // 从spArgs获取到表单提交上来的title
                'contents' => $this->spArgs('contents'),
        );
        $guestbook->create($newrow);
        $findrow=array(
                'title'=>$newrow['title'],
                );
        $id=$guestbook->find($findrow);
        $this->test_html($id['id']);
        echo "留言成功,返回";
    }
   
function test_html($id){ // 测试spHtml生成静态页面的方法
        echo "开始生成留言本内容页面...";
        $guestbook = spClass("guestbook");
        $url=array('main','show',array('id'=>$id));               
        spClass('spHtml')->make($url); // 使用makeAll来制作
        echo "留言本内容页面生成完毕!";
    }

2014-02-25 21:25:11