生成静态页
来源:互联网 发布:网络教学信息技术应用 编辑:程序博客网 时间:2024/06/06 09:36
在页面头部包含以下页面
<?phpob_start();//获取当前url$url = $_SERVER["REQUEST_URI"];$arr_url = explode('/', $url);//获取文件后缀function extend($file_name) { $retval = ""; $pt = strrpos($file_name, "."); if ($pt) $retval = substr($file_name, $pt + 1, strlen($file_name) - $pt); return ( $retval );}$time = time();foreach ($arr_url as $k => $v) { if (!empty($v)) { if (count($arr_url) != $k + 1) { $str_url .= $v . '/'; } if (extend($url) == 'html') { if ($v != 'html') { if (!is_dir($str_url)) { //如果不存在就建立 mkdir($str_url, 0777); } if (count($arr_url) == $k + 1) { if (extend($v) == 'html') { $v = str_replace('.html', '', $v); } if (file_exists($str_url . $v . '.html')) { if ($time - filemtime($str_url . $v . ".html") < 30 * 60) { $html_url = $_SERVER['HTTP_HOST'] . '/' . $str_url . $v . '.html'; replace($str_url . $v . ".html"); $string = file_get_contents('./' . $str_url . $v . '.html'); $string = iconv('UTF-8', 'UTF-8', $string); echo $string; exit; } } } } } }}?>
在页面底部加入以下页面
<?phpif (extend($url) == 'html') { $temp = ob_get_contents(); $fp = fopen($str_url . $v . ".html", 'w'); fwrite($fp, $temp) or die('写文件错误'); replace($str_url . $v . ".html"); ob_end_clean(); $string = file_get_contents('./' . $str_url . $v . '.html'); $string = iconv('UTF-8', 'UTF-8', $string); echo $string; exit;}?>
创建以后以下两个方法
function replace($url){ fwrites($url, '/([a-zA-Z0-9]*)[.]php/', BJCMS_PATH.'/html/$1.html');}function fwrites($url, $str, $bstr) { $file_content = file_get_contents($url); $qiqi = preg_replace($str, $bstr, $file_content); //var_dump($qiqi); //$qiqi = str_replace($str, $bstr, $file_content); $filename = $url; $somecontent = $qiqi; if (is_writable($filename)) { // 在这个例子里,我们将使用添加模式打开$filename, // 因此,文件指针将会在文件的开头, // 那就是当我们使用fwrite()的时候,$somecontent将要写入的地方。 if (!$handle = fopen($filename, 'w')) { echo "不能打开文件 $filename"; exit; } // 将$somecontent写入到我们打开的文件中。 if (fwrite($handle, $somecontent) === FALSE) { echo "不能写入到文件 $filename"; exit; } fclose($handle); } else { echo "文件 $filename 不可写"; }}
- 如何生成静态页
- 如何生成静态页
- 如何生成静态页
- 非摸板生成静态页
- aspx生成静态页
- 动态生成静态页
- 如何生成静态页
- 生成静态页
- 非摸板生成静态页
- PHP生成静态页
- smarty生成静态页
- php生成静态页
- PHP生成静态页
- php生成静态页
- 生成 shtml 静态页
- 生成静态页
- aspx生成静态页
- 生成静态页
- Oracle Connect By用法
- log4j.properties配置详解
- Ubuntu10.04 地址栏不见了
- Android中的网络时间同步
- Android 开启闪光灯做手电筒
- 生成静态页
- 报错Cannot create PoolableConnectionFactory
- 关于tomcat下的work目录
- 【读书笔记-重构与模式】设计模式之简单工厂模式、工厂模式、抽象工厂
- Vector、ArrayList和List的异同[转载]
- Android之文件存储方式
- Linux线程同步之互斥锁
- FreeMarker 指南(一) -【纯属整理】
- JAVA中使用FTPClient实现文件上传下载