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桌面中心(二) 数据库写入
Mar 11 PHP
php数据入库前清理 注意php intval与mysql的int取值范围不同
Dec 12 PHP
最常用的8款PHP调试工具
Jul 06 PHP
php编写的一个E-mail验证类
Mar 25 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
Mar 27 PHP
php实现常见图片格式的水印和缩略图制作(面向对象)
Jun 15 PHP
thinkphp框架实现删除和批量删除
Jun 29 PHP
PHP生成及获取JSON文件的方法
Aug 23 PHP
PHP 中魔术常量的实例详解
Oct 26 PHP
PHP 数组黑名单/白名单实例代码详解
Jun 04 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 PHP
用Laravel轻松处理千万级数据的方法实现
Dec 25 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实现分页功能的详细实例方法
2019/09/29 PHP
javascript 动态添加表格行
2006/06/22 Javascript
javascript中的有名函数和无名函数
2007/10/17 Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
2014/05/18 Javascript
javascript和jquery实现用户登录验证
2016/05/04 Javascript
JavaScript闭包实例详解
2016/06/03 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
JavaScript reduce和reduceRight详解
2016/10/24 Javascript
javascript实现圣旨卷轴展开效果(代码分享)
2017/03/23 Javascript
jQuery 表单序列化实例代码
2017/06/11 jQuery
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
vue bus全局事件中心简单Demo详解
2018/02/26 Javascript
浅谈Vue组件及组件的注册方法
2018/08/24 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
[40:19]2018完美盛典CS.GO表演赛
2018/12/17 DOTA
详解如何从TensorFlow的mnist数据集导出手写体数字图片
2019/08/05 Python
python3.x中安装web.py步骤方法
2020/06/23 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
Python批量删除mysql中千万级大量数据的脚本分享
2020/12/03 Python
屈臣氏官方旗舰店:亚洲享负盛名的保健及美妆零售商
2019/03/15 全球购物
深圳茁壮笔试题
2015/05/28 面试题
教师自荐书
2013/10/08 职场文书
金融专业推荐信
2013/11/14 职场文书
营销专业应届生求职信
2013/11/26 职场文书
国际会议邀请函范文
2014/01/16 职场文书
《难忘的泼水节》教学反思
2014/02/27 职场文书
省级优秀班集体申报材料
2014/05/25 职场文书
运动会加油口号
2014/06/07 职场文书
班子四风对照检查材料思想汇报
2014/09/29 职场文书
旷课检讨书范文
2015/01/27 职场文书
go语言中http超时引发的事故解决
2021/06/02 Golang
DIV CSS实现网页背景半透明效果
2021/12/06 HTML / CSS
java代码实现空间切割
2022/01/18 Java/Android