php2html php生成静态页函数


Posted in PHP onDecember 08, 2008

<?php
/**
------------------------
Function: php2html($in_Url, $out_htmlFile, $out_logFile)
------------------------
@ Description: 生成静态函数
@ Copyright: Copyright (c) 2006 - 2011
@ Create: 2006-08-01
@ Modify: 2006-10-27
@ 提示:这里要用到的路径为服务器绝对路径; 若给定的路径目录不存在则自动创建
=======================================================================================
@ Example:php2html("https://3water.com", "/www/html/index.html", "/www/log/log.txt");
*/
// {{{ contents
function php2html($in_Url, $out_htmlFile, $out_logFile)
{
$htmlContent = file_get_contents($in_Url); //将文件读入 $htmlContent 变量
/**
* @检查要生成的文件是否存在
*/
if (is_file($out_htmlFile))
{
@unlink($out_htmlFile);//若文件已存在,则删除
}
/**
* @ 创建目录 网页部分
*/
$dir_array = explode("/", dirname($out_htmlFile));
chdir("/"); //改变目录到根
for($i=1;$i<count($dir_array);$i++)
{
if(is_dir($dir_array[$i]))
{
chdir($dir_array[$i]);
}
else
{
mkdir($dir_array[$i]);
chdir($dir_array[$i]);
}
}
/**
* @ 创建目录 日志部分
*/
$dir_array = explode("/", dirname($out_logFile));
chdir("/"); //改变目录到根
for($i=1;$i<count($dir_array);$i++)
{
if(is_dir($dir_array[$i]))
{
chdir($dir_array[$i]);
}
else
{
mkdir($dir_array[$i], 0777);
chdir($dir_array[$i]);
}
}
$handle = fopen($out_htmlFile, "w"); //打开文件指针,创建文件
$logHandle = fopen ($out_logFile, "a+"); //打开日志文件
/**
* @检查目录是否可写
*/
if (!is_writable($out_htmlFile))
{
echo "文件:".$out_htmlFile."不可写,请检查目录属性后重试";
exit();
}
if (!is_writable($out_logFile))
{
echo "文件:".$out_logFile."不可写,请检查目录属性后重试";
exit();
}
/**
* @写入文件
*/
if (!fwrite ($handle, $htmlContent))
{
$logMsg = "写入文件" . $out_htmlFile . "失败";
}
else
{
$logMsg = "创建文件" . $out_htmlFile . "成功";
}
/**
* @记录日志
*/
$logMsg .= "(".date("Y-m-d H:i:s") .")\r\n";
fwrite ($logHandle, $logMsg);
fclose($logHandle); //关闭日志指针
fclose ($handle); //关闭指针
}
// }}}
php2html("https://3water.com", dirname(__FILE__)."/yanjing_html/index.html", dirname(__FILE__)."/yanjing_log/log.txt");
echo "成功";
?>

PHP 相关文章推荐
PHP中的日期及时间
Nov 23 PHP
PHP中文汉字验证码
Apr 08 PHP
php去除重复字的实现代码
Sep 16 PHP
在PHP中使用redis
Nov 04 PHP
php二维数组排序详解
Nov 06 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
May 07 PHP
PHP类的声明与实例化及构造方法与析构方法详解
Jan 26 PHP
使用symfony命令创建项目的方法
Mar 17 PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 PHP
PHP7.1实现的AES与RSA加密操作示例
Jun 15 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
Mar 18 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
May 02 PHP
php 远程图片保存到本地的函数类
Dec 08 #PHP
PHP 出现乱码和Sessions验证问题的解决方法!
Dec 06 #PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 #PHP
php 远程关机操作的代码
Dec 05 #PHP
php 清除网页病毒的方法
Dec 05 #PHP
php读取msn上的用户信息类
Dec 05 #PHP
php获取网页内容方法总结
Dec 04 #PHP
You might like
php xml实例 留言本
2009/03/20 PHP
PHP 批量删除 sql语句
2009/06/05 PHP
php购物网站支付paypal使用方法
2010/11/28 PHP
php中使用Akismet防止垃圾评论的代码
2011/06/10 PHP
destoon二次开发入门示例
2014/06/20 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
PHP防止刷新重复提交页面的示例代码
2015/11/11 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
Laravel框架实现的记录SQL日志功能示例
2018/06/19 PHP
PHP 文件写入和读取操作实例详解【必看篇】
2019/11/04 PHP
jQuery 加上最后自己的验证
2009/11/04 Javascript
JQuyer $.post 与 $.ajax 访问WCF ajax service 时的问题需要注意的地方
2011/09/20 Javascript
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
阻止表单提交按钮多次提交的完美解决方法
2016/05/16 Javascript
jQuery命名空间与闭包用法示例
2017/01/12 Javascript
AngularJS 打开新的标签页实现代码
2017/09/07 Javascript
JS 实现分页打印功能
2018/05/16 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
vue的三种图片引入方式代码实例
2019/11/19 Javascript
vue项目中使用vue-layer弹框插件的方法
2020/03/11 Javascript
python连接远程ftp服务器并列出目录下文件的方法
2015/04/01 Python
对pandas进行数据预处理的实例讲解
2018/04/20 Python
Python装饰器用法实例分析
2019/01/14 Python
python中如何写类
2020/06/29 Python
python中的unittest框架实例详解
2021/02/05 Python
北京银河万佳Java面试题
2012/03/21 面试题
涉外文秘个人求职的自我评价
2013/10/07 职场文书
模具专业推荐信
2013/10/30 职场文书
竞聘副主任科员演讲稿
2014/01/11 职场文书
高中政治教学反思
2014/01/18 职场文书
工程管理专业毕业生自荐信
2014/01/24 职场文书
无偿献血倡议书
2014/04/14 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
中班下学期个人工作总结
2015/02/12 职场文书
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL