php 静态化页面生成

一:使用ob_start()缓存实现页面静态化

//打开输出缓冲,当输出缓冲激活后,脚本将不会输出内容
ob_start();
echo '<div>测试静态化</div>';
//获取内部缓冲区的内容
$out = ob_get_contents();
//关闭输出缓存
ob_end_clean();
//打开test.html文件开启写入权限
$fp = fopen("test.html", "w");
if (!$fp) {
    //写入失败
} else {
    //写入文件
    fwrite($fp, $out);
    //关闭文件
    fclose($fp);
    //写入成功
}

通过如上可以实现将html字符串保存成文件实现静态化

二:替换html模板实现静态化

1:html 模板

<div>{$name}</div>

2:php获取模板信息并替换实现静态化

$path = './test.html';
//获取模板信息
$content = file_get_contents($path);
//获取要替换的值进行字符串的替换
$content = str_replace('{$name}','测试静态化',$content);
$filename= 'static.html';
//写入内容到对应静态文件中
$result =  file_put_contents($filename,$content);
if ($result) {
    //写入成功
} else {
    //写入失败
}

相关推荐