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获取后台Job管理的实现代码
Jun 10 PHP
php中使用接口实现工厂设计模式的代码
Jun 17 PHP
PHP合并两个数组的两种方式的异同
Sep 14 PHP
getimagesize获取图片尺寸实例
Nov 15 PHP
PHP内核学习教程之php opcode内核实现
Jan 27 PHP
PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
Feb 15 PHP
php中this关键字用法分析
Dec 07 PHP
PHP查询分页的实现代码
Jun 09 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
Aug 10 PHP
PHP学习笔记之session
May 06 PHP
Yii2框架redis基本应用示例
Jul 13 PHP
Yii2框架加载css和js文件的方法分析
May 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分页示例分享
2014/04/30 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
2014/06/12 PHP
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
2012/02/27 Javascript
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
treepanel动态加载数据实现代码
2012/12/15 Javascript
使用简洁的jQuery方法实现隔行换色功能
2014/01/02 Javascript
Node.js中的模块机制学习笔记
2014/11/04 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
2015/06/10 Javascript
javascript针对cookie的基本操作实例详解
2015/11/30 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
浅谈关于.vue文件中style的scoped属性
2017/08/19 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
vue 挂载路由到头部导航的方法
2017/11/13 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
vue input实现点击按钮文字增删功能示例
2019/01/29 Javascript
jQuery列表动态增加和删除的实现方法
2020/11/05 jQuery
[05:09]第二届DOTA2亚洲邀请赛决赛日比赛集锦:iG 3:0 OG夺冠
2017/04/05 DOTA
tensorflow创建变量以及根据名称查找变量
2018/03/10 Python
python简单商城购物车实例代码
2018/03/15 Python
python3中获取文件当前绝对路径的两种方法
2018/04/26 Python
python使用matplotlib模块绘制多条折线图、散点图
2020/04/26 Python
Python进阶:生成器 懒人版本的迭代器详解
2019/06/29 Python
python的几种矩阵相乘的公式详解
2019/07/10 Python
python实现文法左递归的消除方法
2020/05/22 Python
玩具反斗城美国官网:Toys"R"Us
2016/09/17 全球购物
YesStyle美国/全球:购买亚洲时装、美容化妆品和生活百货
2017/01/16 全球购物
大专毕业生自我评价分享
2013/11/10 职场文书
美术师范毕业生自荐信
2013/11/16 职场文书
体育教育专业自荐信范文
2013/12/20 职场文书
弘扬民族精神演讲稿
2014/05/07 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
党员干部三严三实心得体会
2014/10/13 职场文书
四大名著读书笔记
2015/06/25 职场文书
微信早安问候语
2015/11/10 职场文书
详解nginx安装过程并代理下载服务器文件
2022/02/12 Servers