最近我學習了smarty ,算是零基礎學習,沒有php 基礎的建議看看基礎 不要向我直接入手 有點困難 。原本本身是搞java,有點基礎。公司要求 那就硬頭皮學學吧 看了網上一些大牛是用 smarty 框架編寫的一些小項目 拿來學習了一下 感受不錯 挺好用的去論壇提問也有人幫忙回答 smarty 功能很強大 也很好用 了2、smarty優勢: 速度:採用smarty編寫的程序能夠得到最大速度的提升,這一點是相對於其它的模板引擎技術而言的。 編譯型:採用smarty編寫的程序在運行時要編譯成一個非模板技術的PHP文件,這個文件採用了PHP與HTML混合的方式,在下一次訪問模板時將WEB請求直接轉換到這個文件中,而再也不進行模板從新編譯(在源程序沒有改動的狀況下)緩存技術:smarty選用的一種緩存技術,它能夠將用戶最終看到的HTML文件緩存成一個靜態的HTML頁,當設定smarty的cache屬性爲true時,在smarty設定的cachetime期內將用戶的WEB請求直接轉換到 這個靜態的HTML文件中來,這至關於調用一個靜態的HTML文件。插件技術:smarty能夠自定義插件。插件實際就是一些自定義的函數。模板中可使用f/elseif/else/endif。在模板文件使用判斷語句能夠很是方便的對模板進行格式重排。 。 如今我回家的時候用本身的平板看韓順平的smarty 教程 打發時間 本身也能學到好多東西 ,你們也能夠去www.simplecd.me 去下載 上面好多有用的東西 。鑑於此本人就不講 什麼smarty 入門基礎知識, 網上一搜一大把 。 我就講一下我在項目作項目的時候遇到的什麼問題和應該注意的事項 這樣能夠幫你們少走路 。 1第一次用就看了一下smarty 開發 文檔,說實話我真的頭大 文檔是幫咱們查函數的不要 全看我這裏就犯了一個方向性錯誤 可是仍是找會來了 哈哈 你們必定要注意Smarty.class.php 這個文件很是重要 裏面好多有用函數在很是有用 assign() 對不, 你們能夠先看看是不該該瞭解一下他的文件目錄什麼東西,你能夠查一下 我就不寫了 給我印象最深的是 //相沖突,因此建議設成<{}>或其它。$smarty->left_delimiter = "{"; $smarty->right_delimiter = "}"; 這個讓我糾結了老一陣 ,通過查找仍是找到了不錯 其實還有 一個辦法 那就值修該 smarty.class.php 最好用 public $left_delimiter = "{"; public $right_delimiter = "}"; 這個給我印象挺深的 2 那就是緩存 由於smart 一大有點那就是緩存 $smarty_template_dir="./templates"; // 存放目錄文件 $smarty_compile_dir="./templates_c";// 存放緩存文件目錄 $smarty_cache="./smarty_cache";// $smarty_caching =FALSE; 我記得我在測試的時候辦緩存改爲true 但我功能沒有成功我就毛了不知道那的緣由 記住在測試的時候必定要用false 不要向我同樣 這一個文件是配置文件的裏面的 記得要修改相關信息 3 那咱就講講assign (函數) 你看幫助文檔裏面 {assign var="name" value="Bob"} {assign "name" "Bob"} {* short-hand *} The value of $name is {$name}. 應該能看懂吧 他會傳遞一下字符串 數組 二維數組 對象 等等這些信息 打擊能夠百度相關信息 assign ("str" ,$str)