insert函數(shù)
例如你在頁面上端使用一個帶有廣告條位置的模板,廣告條可以包含任何HTML、圖象、FLASH等混合信息. 因此這里不能使用一個靜態(tài)的鏈接,同時我們也不希望該廣告條被緩存. 這就需要在 insert 函數(shù)指定:#banner_location_id# 和 #site_id# 值(從配置文件中取),同時需要一個函數(shù)取廣告條的內(nèi)容信息.
eg:
{insert name="getBanner" lid=#banner_location_id# sid=#site_id#}
說明:在此例中,我們使用了 getBanner 作為 name 屬性,同時傳遞了 #banner_location_id# 和 #site_id# 兩個參數(shù).?
接下來 Smarty 在你的 php 程序中搜索名為 insert_getBanner() 的函數(shù),#banner_location_id# 和 #site_id# 的值被組合成一個數(shù)組作為函數(shù)的第一個參數(shù)傳遞給該函數(shù). 為了避免函數(shù)命名混亂,所有的 insert 函數(shù)都必須以 insert_ 開頭.?
你的 insert_getBanner() 函數(shù)根據(jù)傳遞的參數(shù)執(zhí)行并返回執(zhí)行的結(jié)果. 這些結(jié)果就顯示在模板中調(diào)用該函數(shù)的位置.?
在此例中 Smarty 調(diào)用該函數(shù)類似insert_getBanner(array("lid"=>"12345","sid"=>67890"));
并將返回的結(jié)果顯示在調(diào)用的位置.