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中文字母数字验证码实现代码
Apr 25 PHP
Apache2中实现多网站域名绑定的实现方法
Jun 01 PHP
PHP连接和操作MySQL数据库基础教程
Sep 29 PHP
php获取YouTube视频信息的方法
Feb 11 PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 PHP
php不使用copy()函数复制文件的方法
Mar 13 PHP
php使用cookie实现记住登录状态
Apr 27 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
php实现保存周期为1天的购物车类
Jul 07 PHP
php合并数组并保留键值的实现方法
Mar 12 PHP
laravel框架查询数据集转为数组的两种方法
Oct 10 PHP
tp5使用layui实现多个图片上传(带附件选择)的方法实例
Nov 17 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文件上传实例详解!!!
2007/01/02 PHP
利用PHP制作简单的内容采集器的原理分析
2008/10/01 PHP
递归删除一个节点以及该节点下的所有节点示例
2014/03/19 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
mysqli扩展无法在PHP7下升级问题的解决
2019/09/10 PHP
JavaScript Base64编码和解码,实现URL参数传递。
2006/09/18 Javascript
JQery 渐变图片导航效果代码 漂亮
2010/01/01 Javascript
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
2011/07/27 Javascript
javascript实现tabs选项卡切换效果(扩展版)
2013/03/19 Javascript
html文本框提示效果的示例代码
2014/06/28 Javascript
js运动动画的八个知识点
2015/03/12 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
2015/03/31 Javascript
JS+CSS实现自适应选项卡宽度的圆角滑动门效果
2015/09/15 Javascript
谈谈我对JavaScript中typeof和instanceof的深入理解
2015/12/25 Javascript
JS遍历页面所有对象属性及实现方法
2016/08/01 Javascript
原生js实现addclass,removeclass,toggleclasss实例
2016/11/24 Javascript
javascript实现table单元格点击展开隐藏效果(实例代码)
2017/04/10 Javascript
vue系列之动态路由详解【原创】
2017/09/10 Javascript
vue select二级联动第二级默认选中第一个option值的实例
2018/01/10 Javascript
js通过canvas生成图片缩略图
2020/10/02 Javascript
[30:51]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第一局
2016/03/04 DOTA
python通过zlib实现压缩与解压字符串的方法
2014/11/19 Python
Python 修改列表中的元素方法
2018/06/26 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
python文件转为exe文件的方法及用法详解
2019/07/08 Python
Flask框架学习笔记之模板操作实例详解
2019/08/15 Python
利用python-docx模块写批量生日邀请函
2019/08/26 Python
Python 识别12306图片验证码物品的实现示例
2020/01/20 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
django 读取图片到页面实例
2020/03/27 Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
2020/05/25 Python
俄罗斯香水和化妆品网上商店:NOTINO.ru
2019/12/17 全球购物
培训班开班仪式主持词
2014/03/28 职场文书
艾滋病宣传标语
2014/06/25 职场文书
通知书大全
2015/04/27 职场文书
Python如何配置环境变量详解
2021/05/18 Python