Heim >php教程 >php手册 >PHP生成HTML静态页面,phphtml静态页面

PHP生成HTML静态页面,phphtml静态页面

WBOY
WBOYOriginal
2016-06-13 08:49:47981Durchsuche

PHP生成HTML静态页面,phphtml静态页面

功能:

从PHP生成HTML静态页面并存储到以年份和月份为名称创建的目录。
读取全部数据批量生成,全部生成后弹出提示。
可指定批次生成数量,建议不超过800,否则执行速度会有问题。

 为jbxue.com网站功能而开发,代码为本人原创,生成速度一般。 

(出于众所周知的原因,涉及到数据库的数据字段名称做了改动,并且为了代码明晰去掉了参数过滤的部分) 

 说明:原动态地址为 moban.php?id=1 ,生成后地址为 html/200808/sell_1.html 。page.php为分页程序,本博客中有发布。 

页面使用方式,将本代码保存为make.php,使用方法为浏览器访问 make.php?t=数量&pg=页面;例如 make.php?t=300&pg=2,即每次生成300条数据,从数据列表第2页开始生成,即跳过前面300条。如果不加任何参数,直接访问make.php,则默认每次生成200条,从第一页开始生成。

例子:

  1. if($_GET[pg]==''){   
  2. $aa=1;   
  3. }else{   
  4. $aa=$_GET[pg];   
  5. }   
  6. include("admin/conn.php");   
  7. require_once("page.php");   
  8. $result=mysql_query("select * from 2carsell ");   
  9. $totle=mysql_num_rows($result);   
  10. $pagelist = $_GET[t];   
  11. if($_GET[t]==''){   
  12. $pagelist='200';   
  13. }else{   
  14. $pagelist=$_GET[t];   
  15. }   
  16. $pager = new Pager($totle,$pagelist);   
  17. $datastat=" 共 ".$pager->countall." 条,每次生成 ".$pager->countlist." 条,共需生成 ".$pager->page." 次";//数据统计   
  18. $bb=$pager->page;   
  19. $pagenav=$pager->backstr.$pager->thestr.$pager->nextstr;   
  20. $limitFrom = $pagelist*($pager->pg-1);   
  21. $result=mysql_query("select * from 2carsell ORDER BY id DESC limit $limitFrom,$pagelist");   
  22. ?>   
  23. "font-size:14px;">第 echo $aa?> > 次页面生成中.. echo $datastat?>

       
  24.    
  25. //php生成静态页面  
  26. // www.jbxue.com  
  27. print "
  28. while($datauser=mysql_fetch_array($result)){   
  29.   
  30. $iid=$datauser[id];   
  31. $html = file_get_contents("/moban.php?id=".$iid."");   
  32. $sql="select * from 2carsell where id=$iid";   
  33. $data=mysql_fetch_array(mysql_query($sql));   
  34. $path=date("Ym",$data[PutDate]);   
  35. $testdir="html/".$path;   
  36. if(file_exists ($testdir)):   
  37. else:   
  38. mkdir ($testdir, 0777);   
  39. echo "目录".$testdir."创建成功!
    ";   
  40. endif;   
  41.   
  42. $filename = "html/$path/sell_$iid.html";   
  43.   
  44. // 使用写入模式打开$filename   
  45. if (!$handle = fopen($filename, 'w')) {   
  46. print "不能打开文件 $filename";   
  47. exit;   
  48. }   
  49.   
  50. if (is_writable($filename)) {   
  51.   
  52. // 将$html写入到我们打开的文件中。   
  53. if (!fwrite($handle, $html)) {   
  54. print "不能写入到文件 $filename";   
  55. exit;   
  56. }   
  57.   
  58. print "文件 $filename 更新成功!\n\r";   
  59.   
  60. fclose($handle);   
  61.   
  62. else {   
  63. print "文件 $filename 不可写";   
  64. }   
  65. ?>   
  66.  }?>   
  67.    


  68.    
  69. "font-size=12px"> echo $datastat."  "?>


       
  70.    
  71. $aa=$aa+1;   
  72. if($aa>$bb){   
  73. echo '恭喜,所有页面生成完毕!';   
  74. echo "<script>alert('所有文档生成/更新完毕!')</script>";   
  75. }else{   
  76. echo "<script> window.location='make.php?t=$pagelist&pg=$aa'; </script>";   
  77. }   
  78. ?>  
 
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn