使用$smarty->display()時是沒有辦法將頁面以字符串的形式返回的。php
查看smarty源碼發現display實際上是調用的$smarty->fetch(),發現一個$diaplay參數,true時打印頁面,false時返回字符串。直接貼源碼(...爲省略的邏輯代碼)fetch
public function fetch($template = null, $cache_id = null, $compile_id = null, $parent = null, $display = false, ...) { ... // display or fetch if ($display) { ... echo $_output; return; } else { ... return $_output; } }
因此使用以下語法能夠返回頁面內容code
$smarty->fetch('xxx');