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 "成功";
?>
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.