php2html php產生靜態頁函數
來源:互聯網
上載者:User
<?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("http://www.jb51.net", "/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("http://www.jb51.net", dirname(__FILE__)."/yanjing_html/index.html", dirname(__FILE__)."/yanjing_log/log.txt");
echo "成功";
?>