Rumah > pembangunan bahagian belakang > tutorial php > php生成静态文件的二种方法

php生成静态文件的二种方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-07-25 09:05:46
asal
1006 orang telah melayarinya
  1. ob_start();#开启服务器缓存
  2. include_once 'Index.php';
  3. $ctx=ob_get_contents();#获取缓存
  4. ob_end_clean();#清空缓存
  5. $fh=fopen("index.html","w+");
  6. fwrite($fh,$ctx);#写入html,生成html
  7. fclose($fh);
  8. ?>
复制代码

方法2:php 静态文件生成类

  1. class CreateHtml
  2. {
  3. function mkdir( $prefix= 'article' )
  4. {
  5. $y = date('Y');
  6. $m = date('m');
  7. $d = date('d');
  8. $p=DIRECTORY_SEPARATOR;
  9. $filePath='article'.$p.$y.$p.$m.$p.$d;
  10. $a=explode($p,$filePath);
  11. foreach ( $a as $dir)
  12. {
  13. $path.=$dir.$p;
  14. if(!is_dir($path))
  15. {
  16. //echo '没有这个目录'.$path;
  17. mkdir($path,0755);
  18. }
  19. }
  20. return $filePath.$p;
  21. }
  22. function start()
  23. {
  24. ob_start();
  25. }
  26. function end()
  27. {
  28. $info = ob_get_contents();
  29. $fileId = '12345';
  30. $postfix = '.html';
  31. $path = $this->mkdir($prefix= 'article');
  32. $fileName = time().'_'.$fileId.$postfix;
  33. $file=fopen($path.$fileName,'w+');
  34. fwrite($file,$info);
  35. fclose($file);
  36. ob_end_flush();
  37. }
  38. }
  39. ?>
  40. $s=new CreateHtml();
  41. $s->start();
  42. ?>
  43. asdfasdfasdfasdfasdfasdfasdfasdfasdf
  44. adfasdfasdf
  45. >
  46. $s->end();
  47. ?>
复制代码

附: 1、Flush:刷新缓冲区的内容,输出。 函数格式:flush() 说明:这个函数经常使用,效率很高。

2、ob_start :打开输出缓冲区 函数格式:void ob_start(void) 说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。

3 、ob_get_contents :返回内部缓冲区的内容。 使用 函数格式:string ob_get_contents(void) 说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE 。

4、ob_get_length:返回内部缓冲区的长度。 使用方法:int ob_get_length(void) 说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激活。则返回 FALSE。

5、ob_end_flush :发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区。 使用方法:void ob_end_flush(void) 说明:这个函数发送输出缓冲区的内容(如果有的话)。

6、ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区 使用方法:void ob_end_clean(void) 说明:这个函数不会输出内部缓冲区的内容而是把它删除!

7、ob_implicit_flush:打开或关闭绝对刷新 使用方法:void ob_implicit_flush ([int flag])

您可能感兴趣的文章: php生成静态页面的三种方法与代码详解 php生成静态页面函数(php2html)的例子 php生成静态页面的方法(三个函数) 细说php生成静态文件之模板与缓存 php写的一个生成静态页面的类 虚拟主机上定时自动生成静态页面的方法 php生成静态页面的详细教程 php生成静态html文件的原理分析 smarty生成静态页面的方法 了解php生成静态HTML文件的原理 PHP生成静态页面的方法 php生成静态html文件的三种方法



Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan