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代码
Feb 16 PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 PHP
php抓取页面与代码解析 推荐
Jul 23 PHP
使用NetBeans + Xdebug调试PHP程序的方法
Apr 12 PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 PHP
保存到桌面、设为桌面且带图标的PHP代码
Nov 19 PHP
ThinkPHP之R方法实例详解
Jun 20 PHP
WIN8.1下搭建PHP5.6环境
Apr 29 PHP
PHP二维数组去重实例分析
Nov 18 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
Oct 16 PHP
PHP常量DIRECTORY_SEPARATOR原理及用法解析
Nov 10 PHP
PHP 出现 http500 错误的解决方法
Mar 09 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解答方法
2012/02/04 PHP
PHP实现图片裁剪、添加水印效果代码
2014/10/01 PHP
PHP中list()函数用法实例简析
2016/01/08 PHP
PHP设计模式之适配器模式定义与用法详解
2018/04/03 PHP
json简单介绍
2008/06/10 Javascript
jQuery ready函数滥用分析
2011/02/16 Javascript
Jquery Post处理后不进入回调的原因及解决方法
2014/07/15 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
2015/05/07 Javascript
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
利用JQuery写一个简单的异步分页插件
2016/03/07 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
2016/06/09 Javascript
JS与HTML结合使用marquee标签实现无缝滚动效果代码
2016/07/05 Javascript
Vuejs第九篇之组件作用域及props数据传递实例详解
2016/09/05 Javascript
Nodejs下用submit提交表单提示cannot post错误的解决方法
2016/11/21 NodeJs
angular ng-repeat数组中的数组实例
2017/02/18 Javascript
JS简单实现获取元素的封装操作示例
2017/04/07 Javascript
jsonp跨域请求详解
2017/07/13 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
2018/06/28 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
基于node.js实现爬虫的讲解
2019/02/18 Javascript
微信小程序商品详情页底部弹出框
2019/11/22 Javascript
JS如何生成动态列表
2020/09/22 Javascript
遗传算法python版
2018/03/19 Python
程序员的七夕用30行代码让Python化身表白神器
2019/08/07 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
Python select及selectors模块概念用法详解
2020/06/22 Python
Python常用扩展插件使用教程解析
2020/11/02 Python
英国最大的奢侈珠宝和手表网站:C W Sellors
2017/02/10 全球购物
学校办公室主任职责
2013/12/27 职场文书
纺织工程专业个人求职信范文
2014/01/27 职场文书
支教个人总结
2015/03/04 职场文书
2015年学校工作总结范文
2015/04/20 职场文书
个人催款函范文
2015/06/24 职场文书
复活读书笔记
2015/06/29 职场文书
煤矿安全生产工作总结
2015/08/13 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书