머리말
사용자가 동적 링크를 클릭할 때마다 데이터 쿼리 요청이 서버로 전송된다면 아마도 수백만 건의 방문이 있는 웹사이트의 경우 이는 의심할 여지 없이 큰 문제가 될 것입니다. 따라서 동적 데이터를 정적 HTML 페이지로 변환하는 것이 인력과 물적 자원을 절약하기 위한 첫 번째 선택이 되었습니다. 이전에 해당 경험이 없었기 때문에 이 기사에서는 PHP를 사용하여 정적 HTML 페이지를 생성하는 원리와 방법을 공유합니다. 필요하신 분은 함께 오셔서 구경해 보세요.
1. 아이디어 분석
사실 정적 페이지 생성 기능을 구현하는 원리는 주로 여러 가지 일반적인 PHP 파일 작업 기능을 사용하여 파일을 작업하는 것입니다. 흐름은 다음과 같습니다 :
2. 함수 구현
example.html을 템플릿 파일로 설정한 후 기사-1.html을 생성합니다. ~이 템플릿 파일 -5.html에 따른 기사, 간단한 데모를 만들기 위해 코드는 다음과 같습니다.
<?php //将数据存入二维数组 $con=array(array('文章标题1','文章内容1'),array('文章标题2','文章内容2'),array('文章标题3','文章内容3'),array('文章标题4','文章内容4'),array('文章标题5','文章内容5')); foreach($con as $id=>$val){ //循环生成 $title=$val[0]; $content=$val[1]; $path="article-".($id+1).".html"; //替换example内容,并获取内容赋值给$str $fp=fopen("example.html","r"); $str=fread($fp,filesize("example.html")); $str=str_replace("{title}",$title,$str); $str=str_replace("{content}",$content,$str); fclose($fp); //新建空白文件,将$str写入 $handle=fopen($path,"w"); fwrite($handle,$str); fclose($handle); echo "生成".$path."<br/>"; } ?> }
주석:
fopen(파일명, Open 메소드), 파일 열기 기능, 파일이 없으면 생성한다. 반환 값은 리소스 유형입니다.
fread(파일 이름, 읽은 바이트 수), 파일 내용 및 해당 바이트 수를 읽고 찾을 값을 바꿉니다. 발견, 검색할 문자열), 대체 함수;
fclose(파일 이름), 파일 닫기
fwrite(쓸 파일 열기, 열 문자열; 쓸 파일, 쓸 최대 바이트 수).