php實現頁面純靜態化的最終目的就是生成純html文件,而這個純html文件就存放在服務器的磁盤當中;
php實現頁面純靜態化需要的東西:
1、文件寫入函數
file_put_contents()、或者fopen()、fwrite()、fclose()等函數;
2、緩衝區(緩存)操作函數
ob函數(ob_start()、ob_get_contents()、ob_clear()、ob_get_clearn()等);
ob_start() — 打開“輸出控制緩衝”;
ob_get_contents() — 返回“輸出緩衝區的內容”;
ob_clearn() — 清空(擦掉)“輸出緩衝區”;
ob_get_clearn() — 得到當前緩衝區的內容並刪除當前“輸出緩衝區”;
在之前的文章中曾經說過,當我們在執行一個php程序,如果這個php程序有數據輸出,那麼這個數據會首先輸出
到php緩衝區,然後緩衝區纔會將數據通過tcp傳輸到客戶端並進行顯示;
那麼有了上面的ob函數(輸出控制緩衝函數),那麼我們就可以通過控制緩衝區的輸出來達到我們的目的,即實現
頁面的靜態化;
流程如下:
首先,當我們執行一個有輸出數據的php程序時,我們應該在輸出數據之前開啓“控制緩衝區”,讓數據輸出到緩衝區;
其次,我們就可以通過ob函數獲取緩衝區的數據;
然後,將獲取到的數據使用“文件寫入函數”寫入到一個html文件中,這個html文件就是純靜態化的html文件;
所以,我們就可以通過直接訪問生成的純靜態化的html文件來達到和訪問動態的php文件同樣的目的,使程序更加高效的運行;