PHP網站頁面靜態化的產生方法介紹

來源:互聯網
上載者:User

  在PHP網站開發中為了網站推廣和SEO等需要,需要對網站進行全站或局部靜態化處理,PHP產生靜態HTML頁面有多種方法,比如利用PHP模板、緩衝等實現頁面靜態化,今天就以PHP執行個體教程形式討論PHP產生靜態頁面的方法。

  什麼是PHP靜態化

  PHP靜態化的簡單理解就是使網站產生頁面以靜態HTML的形式展現在訪客面前,PHP靜態化分純靜態化和偽靜態化,兩者的區別在於PHP產生靜態頁面的處理機制不同。

  PHP偽靜態教程:利用Apache mod_rewrite實現URL重寫的方法

  PHP產生靜態HTML頁面的方法

  1、利用PHP模板產生靜態頁面

  PHP模板實現靜態化非常方便,比如安裝和使用PHP Smarty實現網站靜態化。

  2、使用PHP檔案讀寫功能產生靜態頁面

  PHP產生靜態頁面執行個體代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
$out1=  "<html><head><title>PHP網站靜態化教程</title></head><body>歡迎訪問PHP網站開發教程網www.leapsoul.cn,本文主要介紹PHP網站頁面靜態化的方法</body></html>";

$fp=fopen("leapsoulcn.html","w");
if(!$fp)
{
    echo"System Error";
    exit();
}
else
{
    fwrite($fp,$out1);
    fclose($fp);
    echo"Success";
}
?>

  3、使用PHP輸出控制函數(Output Control)產生靜態頁面

  輸出控制函數(Output Control)也就是使用和控制緩衝來產生靜態HTML頁面,也會使用到PHP檔案讀寫函數。

  PHP產生靜態頁面執行個體代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?
ob_start();

echo"<html>".
        "<head>".
        "<title>PHP網站靜態化教程</title>".
        "</head>".
     "<body>歡迎訪問PHP網站開發教程網www.leapsoul.cn,本文主要介紹PHP網站頁面靜態化的方法</body>".
     "</html>";

$out1=ob_get_contents();

ob_end_clean();

$fp=fopen("leapsoulcn.html","w");
if(!$fp)
{
    echo"System Error";
    exit();
}
else
{
    fwrite($fp,$out1);
    fclose($fp);
    echo"Success";
}
?>

  我們知道使用PHP進行網站開發,一般執行結果直接輸出到遊覽器,為了使用PHP產生靜態頁面,就需要使用輸出控制函數控制緩衝區,以便擷取緩衝區的內容,然後再輸出到靜態HTML分頁檔中以實現網站靜態化。

  PHP產生靜態頁面的思路為:首先開啟緩衝,然後輸出了HTML內容(你也可以通過include將HTML內容以檔案形式包含進來),之後擷取緩衝中的內容,清空緩衝後通過PHP檔案讀寫函數將緩衝內容寫入到靜態HTML分頁檔中。PHP檔案讀寫教程?

  獲得輸出的緩衝內容以產生靜態HTML頁面的過程需要使用三個函數:ob_start()、ob_get_contents()、ob_end_clean()。

知識點

  1、ob_start函數一般主要是用來開啟緩衝,注意使用ob_start之前不能有任何輸出,如空格、字元等。

  2、ob_get_contents函數主要用來擷取緩衝中的內容以字串形式返回,注意此函數必須在ob_end_clean函數之前調用,否則擷取不到緩衝內容。

  3、ob_end_clean函數主要是清空緩衝中的內容並關閉緩衝,成功則返回True,失敗則返回False

  PHP輸出控制函數(Output Control)有很多應用,今後將陸續展開。

  至此,使用PHP產生靜態HTML頁面以實現網站靜態化的方法就介紹完了,根據實際情況和需求你可以選擇不同的靜態化方法。

  :PHP網站開發教程-leapsoul.cn著作權,轉載時請以連結形式註明原始出處及本聲明,謝謝。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.