php中静态化生成的方法(htm页面生成)
在php中原生态的生成html页面我们会用到三个函数:ob_start()、ob_get_contents()、ob_end_clean()了,然后再把获取的内容给fopen函数生成即可。
例子,利用三个函数:ob_start()、ob_get_contents()、ob_end_clean()函数
知识点:
1、ob_start函数一般主要是用来开启缓存,注意使用ob_start之前不能有任何输出,如空格、字符等。
2、ob_get_contents函数主要用来获取缓存中的内容以字符串形式返回,注意此函数必须在ob_end_clean函数之前调用,否则获取不到缓存内容。
3、ob_end_clean函数主要是清空缓存中的内容并关闭缓存,成功则返回True,失败则返回False
输出控制函数(Output Control)也就是使用和控制缓存来生成静态HTML页面,也会使用到PHP文件读写函数。
PHP生成静态页面实例代码
<?php ob_start(); echo "<html>" . "<head>" . "<title>PHP网站静态化教程</title>" . "</head>" . "<body>欢迎访问PHP网站开发教程网www.phprm.com 本文主要介绍PHP网站页面静态化的方法</body>" . "</html>"; $out1 = ob_get_contents(); ob_end_clean(); $fp = fopen("leapsoulcn.html", "w"); if (!$fp) { echo "System Error"; exit(); } else { fwrite($fp, $out1); fclose($fp); echo "Success"; } ?>
例子,
利用框架模板生成最近比较火的php框架有thinkphp下面我们就以它为例子。
thinkphp提供了一个有效的生成静态页的方法,(在tp2.0的手册上有说明,3.0的手册上没有说明了,不过3.0方法还是存在的。)
$this->buildHtml('静态文件', '静态路径','模板文件');
参数一:静态文件,是指生成后的静态文件名,文件保存路径完整的就是:静态路径/静态文件。例如静态文件设置a/index.那么保存的路径就是项 目路径/Html/a/index.html(默认的静态路径在项目路径的Html文件夹下,没有可以自己创建)
参数二:静态路径,上面已经说明了默认的路径,3.0中可以在入口文件里加入参数来更改静态路径。 define('HTML_PATH', './');(将静态路径义为网站根目录)
参数三:模板文件,我感觉官方这个描述是不正确的,准确的来说应该是目标模块,就是需要生成静态文件的模块。格式:模块名:操作。比如要生成Index下的a方法为静态文件,那就是Index:a。如果为空则默认生成当前操作的静态文件。
1 、在入口文件index.php文件中定义生成静态页面的文件位置,然后在个目录新建Html文件夹
define( 'HTML_PATH' , './Html' );//www.phprm.com
2 、在根目录的config文件夹中的config.php配置静态页面的类型,设为 html
'HTML_FILE_SUFFIX' = > '.html' , // 默认静态文件后缀
3 、在"Tpl / default / "目录中新建一个Index的文件夹,文件夹下面新建一个index.html的模板, 模板里面内容为:这是生成静态页例子
4 、控制器IndexAction. class .php中的代码
class IndexAction extends Action {
public function index() {
$this - > buildHtml('名称', HTML_PATH . '/', '模版', 'utf8'); //注意:这里的utf8不能写成utf-8
$this - > display();
}
}
?>
解释 :
这里的buildHtml是thinkphp内置的函数,这里的意思是:
将index的模板文件生成utf8编码格式的静态网页,该文件名为 1 .html,存在于根目录的htm文件中
该函数有 5 个参数,具体如下 :
buildHtml($htmlfile,$htmlpath,$templateFile,$charset,$contentType = 'text/html' )
参数:
$htmlfile 生成的静态文件名称
$htmlpath 生成的静态文件路径
$templateFile 指定要生成静态的模板文件
$charset 生成静态文件的编码格式
$contentType 生成静态文件的类型
<?php // 生成静态页 class AddhtmlAction extends CommonAction { public function index() { $this->assign('abc', 'abc222222222'); $pagename = '123 www.phprm.com'; //页面名称 $temppath = ''; //显示模版路径 //查看配置文件是否开启显示静态模版 if (C('IS_HTML')) { //判断是否已经生成静态页面 if (!is_file(HTML_PATH . '/' . $pagename . 'html')) $this->buildHtml($pagename, HTML_PATH . '/', 'index', 'utf8'); //注意:index为动态模版 这里的utf8不能写成utf-8 $temppath = HTML_PATH . '/' . $pagename . 'html'; } $this->display($temppath); } } ?>
文章链接:
随便收藏,请保留本文地址!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory 해결 방법 PHP 개발을 사용하는 과정에서 "PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory"와 같은 파일 작업 문제가 종종 발생합니다.

PHPWarning:fopen():SSLOperationfailedinfile.phponlineX 해결 방법 PHP 프로그래밍에서는 fopen 함수를 사용하여 파일이나 URL을 열고 관련 작업을 수행하는 경우가 많습니다. 그러나 fopen 함수를 사용할 때 때때로 Warning:fopen():SSLOperationfailedinfile.p와 유사한 문제가 발생할 수 있습니다.

PHP.ini 파일의 인코딩 수정 방법을 해석합니다. PHP.ini 파일은 해당 파일의 매개변수를 수정하여 PHP 실행 환경을 구성할 수 있습니다. 인코딩 설정 역시 매우 중요하며, 한자 처리, 웹페이지 인코딩 등에서 중요한 역할을 합니다. 이 기사에서는 PHP.ini 파일에서 인코딩 관련 구성을 수정하는 방법을 자세히 소개하고 참조용 특정 코드 예제를 제공합니다. 현재 인코딩 설정 보기: PHP.ini 파일에서 다음 두 가지 관련 매개변수를 검색할 수 있습니다.

PHPWarning:fopen():failedtoopenstream:Permissiondenied 문제 해결 방법 PHP 프로그램을 개발하는 과정에서 PHPWarning:fopen():failedtoopenstream:Permissiondenied와 같은 오류 메시지를 자주 접하게 됩니다. 이 오류는 일반적으로 잘못된 파일 또는 디렉터리 권한으로 인해 발생합니다.

Matlab에서 fopen 함수는 파일을 열고 파일에 대한 후속 읽기 또는 쓰기 작업을 위해 파일 식별자를 반환하는 데 사용됩니다. 필요에 따라 적절한 권한 옵션을 선택하여 파일을 열고 작업이 완료되면 즉시 파일을 닫습니다. 파일을 연 후에는 시스템 리소스를 해제하는 데 더 이상 필요하지 않은 시간에 파일이 닫히는지 확인해야 합니다. 또한 파일 열기에 실패하거나 작업 오류가 발생하는 경우 오류 처리 메커니즘을 사용하여 그에 따라 처리할 수 있습니다.

PHP 개발에서는 파일 작업이 매우 일반적입니다. 정상적인 상황에서는 파일 읽기, 쓰기, 삭제 및 기타 작업을 수행해야 합니다. 그 중 fopen 함수, fread 함수를 사용하여 파일을 읽을 수 있고, fopen 함수, fwrite 함수, fclose 함수를 사용하여 파일을 쓸 수 있습니다. 이 기사에서는 PHP가 fopen, fwrite 및 fclose를 사용하여 파일 작업을 수행하는 방법을 소개합니다. 1. fopen 함수 fopen 함수는 파일을 여는 데 사용됩니다. r은 다음과 같습니다.

C의 fopen() 메소드는 지정된 파일을 여는 데 사용됩니다. 문제 구문 FILE*fopen(filename,mode)을 이해하기 위해 예를 들어 보겠습니다. 다음은 fopen()을 사용하여 파일을 여는 데 유효한 모드입니다: 'r', 'w', 'a', 'r+', 'w+ ', 'a+'. 자세한 내용은 C 라이브러리 함수 fopen()을 참조하세요.

PHP 시간대 구성 오류는 일반적인 문제입니다. 날짜 및 시간 관련 기능이 PHP 코드에 포함된 경우 시간대를 올바르게 구성하는 것이 매우 중요합니다. 시간대 구성이 올바르지 않으면 날짜 및 시간 표시가 부정확해지거나 다른 문제가 발생할 수 있습니다. PHP 시간대 구성 오류를 해결하려면 date_default_timezone_set() 함수를 설정하여 올바른 시간대를 지정해야 합니다. 구체적인 코드 예시는 다음과 같습니다.
