現在、ほとんどの CMS システムは静的ページを使用しています。これの利点は、第一に、サーバーの負荷を軽減できること、第二に、HTML 静的ページを生成するため、Web サイトが検索エンジンによって検索される可能性が高くなるということです。それはウェブサイトの宣伝のためでもあります。
1. ページの静的分類
真の静的: 静的ページ ファイルは、訪問時に直接アクセスされる静的ページです。
擬似静的: 動的 URL は静的 URL のように見えます。つまり、動的 Web ページは URL メソッドを書き換えることによって動的 Web ページのパラメータを削除しますが、実際の Web ページのディレクトリに書き換えられたページを実装する必要はありません。詳細については、前章を参照してください: http://blog.csdn.net/zhao1234567890123456/article/details/38569139
2. 実際の静的実装方法
[1] テンプレートを使用して静的ファイルを生成し、書き込みますファイルを自分で作成するか、Smarty などの静的 Web サイトを実現できる他のフレームワークを使用します。以下は、静的ファイルを生成するためのテンプレートの使用を理解するための簡単なプログラムです。
テンプレート ファイル template.htm:
[html] プレーンコピー印刷を表示します
-
-
%title%< /title> -
-
- [php]
普通のコピー印刷を表示します -
-
- //Replace函数用于将从模版文件中读取的内容中的关键字替换成变量中的内容
- function Replace($row)
- {
- $title = "文章标题"; //定义用来替换的变量
- $body = "这里是文章主体";
- $row = str_replace("%title%", $title, $row); //替换参数中的关键字
- $row = str_replace("%body%", $body, $row);
- return $row; //返回替换后的结果
- }
-
- $f_tem = fopen("template.htm","r"); //模版文件指针
- $f_new = fopen("new.htm","w"); //生成的文件指针
- //循环读取模版文件,每次读取一行
- while(!feof($f_tem))
- {
- $row = fgets($f_tem);
- $row = Replace($row); //替换读入内容中的关键字
- fwrite($f_new, $row); //将替换后的内容写入生成的HTML文件
- }
- fclose($f_new); //关闭文件指针
- fclose($f_tem);
- ?>
<?php //Replace函数用于将从模版文件中读取的内容中的关键字替换成变量中的内容 function Replace($row) { $title = "文章标题"; <span style="font-family: Arial, Helvetica, sans-serif;">//定义用来替换的变量</span> $body = "这里是文章主体"; $row = str_replace("%title%", $title, $row); <span style="font-family: Arial, Helvetica, sans-serif;">//替换参数中的关键字 </span> $row = str_replace("%body%", $body, $row); return $row; <span style="font-family: Arial, Helvetica, sans-serif;">//返回替换后的结果 </span>} $f_tem = fopen("template.htm","r"); <span style="font-family: Arial, Helvetica, sans-serif;">//模版文件指针 </span>$f_new = fopen("new.htm","w"); <span style="font-family: Arial, Helvetica, sans-serif;">//生成的文件指针</span>//循环读取模版文件,每次读取一行 while(!feof($f_tem)) { $row = fgets($f_tem); $row = Replace($row); //替换读入内容中的关键字 fwrite($f_new, $row); //将替换后的内容写入生成的HTML文件 } fclose($f_new); <span style="font-family: Arial, Helvetica, sans-serif;">//关闭文件指针</span>fclose($f_tem); ?>
ログイン後にコピー
[2]通过php程序写静态文件,这里提供一个简单案例
[php] view plain copy print ?
- ob_start();
-
-
- < /head>
_get_contents (); -
ob_end_clean(); -
$fp = fopen("ceshi.html","w"); -
if(!$fp) -
{ echo ファイルが存在しません"; -
exit() ; -
} -
else -
{ -
fwrite($fp,$out1) -
-
-
-