thinkphp本身自帶了一個有效的生成靜態頁的方法,(該方法在tp2.0的手冊上有說明,3.0的手冊上沒有說明了,不過3.0方法還是存在的。)
$this-> buildHtml('靜態檔案', '靜態路徑','範本檔案');
稍微說明下參數,有些朋友問我這個參數和具體如何使用。
參數一:靜態文件,是指產生後的靜態檔案名,檔案保存路徑完整的就是:靜態路徑/靜態檔案。例如靜態檔案設定a/index.那麼儲存的路徑就是項目
目路徑/Html/a/index.html(預設的靜態路徑在專案路徑的Html資料夾下,沒有可以自己建立)
參數二:靜態路徑,上面已經說明了預設的路徑,3.0中可以在入口文件裡加入參數來更改靜態路徑。
define('HTML_PATH', './');(將靜態路徑義為網站根目錄)
參數三:模板文件,我感覺官方這個描述是不正確的,準確的來說應該是目標模組,就是需要產生靜態檔案的模組。格式:模組名:操作。例如要產生Index下的a方法為靜態文件,那就是Index:a。如果為空則預設產生目前操作的靜態檔案。
例子:
class IndexAction extends Action { public function index(){ $this->buildHtml("index",'',""); $this -> display(); } }
其實
$this->buildHtml("index",'',"");
$this->buildHtml("index",'',"Index:index");
$this->buildHtml("index",'',"index");
這樣三個格式是等效的
可以在當前模組下加入語句,那麼只要運行該模組就會產生指定的目錄下的"模組.html"文件,通常的模組做法就是網站建置好以後,專門寫一個方法,然後讓其執行,使整個站點一次性生成靜態文件,注意:如果站點有編輯或調整那麼必須清理緩存一次,就是項目下的Runtime文件夾必須清空。
更多採用thinkphp自帶方法產生靜態html檔案詳解相關文章請關注PHP中文網!