《Smarty影片教學》將帶你了解如何實現程式碼分離。 smarty是目前業界最著名的PHP模板引擎之一。它分離了邏輯程式碼和外在的內容,提供了一個易於管理和使用的方法,用來將原本與HTML程式碼混雜在一起PHP程式碼邏輯分離。簡單的講,目的就是要讓PHP程式設計師同前端人員分離,使得二者的工作不會互相影響!
課程播放網址:http://www.php.cn/course/353.html
該老師講課風格:
講課親切自然,樸實無華,沒有矯揉造作,也不刻意渲染,而是婁娓而談,細細道來,師生之間在一種平等、協作、和諧的氣氛下,進行默默的情感交流,將對知識的渴望和探索融於簡樸、真實的教學情景之中,學生在靜靜的思考、默默的首肯中獲得知識
本影片中較為困難是Smarty-快取了:
(1)頁面快取:整個頁面全域的快取
需要4個步驟:
①開啟快取 $smarty->caching = true;
②設定快取的生命週期 $smarty->cache_lifetime = 3600;
##③設定快取目錄smarty->cache_dir = './cache'; ④設定只有在沒有快取的時候,再從資料庫取資料if(!$smarty->isCached(‘模板名’)){//从数据库取数据并assign赋值}(2)局部不快取在整個頁面快取的基礎上,頁面中會有一些部分是無法快取、需要及時更新的。例如時間,股票資訊等。所以這就需要控制局部不緩存。總共有4種方法:以在php檔案中傳遞給模板一個時間戳為例:
<?php //省略其他代码 $smarty->assign(‘time’,time()); ?>①單標籤控制在模板的標籤中使用nocache,就可以控制該標籤不緩存,如下:
{$time nocache}②nocache標籤對在{nocache}{/nocache}標籤對內的區域,都可以實作不緩存#例如
{nocache}{$time1}{$time2}{/nocache}這樣,兩個標籤$time1和$time2都不緩存③在assign賦值的時候控制php中,用assign方法向模板標籤賦值的時候,第一個參數是標籤名,第二個參數是值,第三個參數是可選的。如果給定第三個參數為true,則表示該標籤不緩存
$smarty->assign(‘time’,$time,true);這樣模板中的{$time}標籤就是不緩存的④透過insert方法得到php對應函數的回傳值具體語法為:在範本中的{insert name='xxx'}的標籤可以得到php檔案中insert_xxx()函數的回傳值。 例如:範本檔案中的程式碼:
{insert name=’time’}
這裡也給大家推薦了原始碼資源的下載:http://www.php.cn/xiazai/ learn/2113
資源裡面跟大家分享了影片課件、ppt以及原始碼以上是傳智播客Smarty影片教學資料(課件、原始碼)分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!