Home  >  Article  >  Backend Development  >  Two ways to generate static files in php

Two ways to generate static files in php

WBOY
WBOYOriginal
2016-07-25 09:05:46901browse
  1. ob_start();#Enable server cache
  2. include_once 'Index.php';
  3. $ctx=ob_get_contents();#Get cache
  4. ob_end_clean();#Clear cache
  5. $fh=fopen ("index.html","w+");
  6. fwrite($fh,$ctx);#Write html, generate html
  7. fclose($fh);
  8. ?>
Copy code

Method 2 :php static file generation class

  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 'No such directory'. $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 adfasdfasdf
  44. >
  45. $s->end();
  46. ?>
Copy code
Attachment: 1. Flush: refresh the contents of the buffer and output. Function format: flush() Description: This function is frequently used and is very efficient.

2. ob_start: Open the output buffer Function format: void ob_start(void) Note: When the buffer is activated, all non-file header information from the PHP program will not be sent, but will be saved in the internal buffer. In order to output the contents of the buffer, you can use ob_end_flush() or flush() to output the contents of the buffer.

3, ob_get_contents: Return the contents of the internal buffer. use Function format: string ob_get_contents(void) Description: This function will return the contents of the current buffer. If the output buffer is not activated, it will return FALSE.

4. ob_get_length: Returns the length of the internal buffer. Usage: int ob_get_length(void) Description: This function will return the length in the current buffer; the same as ob_get_contents, if the output buffer is not activated. then returns FALSE.

5. ob_end_flush: Send the contents of the internal buffer to the browser and close the output buffer. Usage: void ob_end_flush(void) Description: This function sends the contents of the output buffer (if any).

6. ob_end_clean: Delete the contents of the internal buffer and close the internal buffer Usage: void ob_end_clean(void) Description: This function will not output the contents of the internal buffer but delete it!

7. ob_implicit_flush: Turn on or off absolute refresh Usage: void ob_implicit_flush ([int flag])

Articles you may be interested in: Three methods and code details for generating static pages in PHP Example of php generating static page function (php2html) How to generate static pages in php (three functions) Details on templates and caching of static files generated by PHP A class written in php to generate static pages How to automatically generate static pages on a virtual host at regular intervals Detailed tutorial on generating static pages with php Principle analysis of php generating static html files How to generate static pages using smarty Understand the principle of php generating static HTML files How to generate static pages with PHP Three ways to generate static html files with php


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn