Re: [心得] 自己出來拋磚引玉一下 -- 我的PHP心得
: 2. 樣板引擎是你工作的好夥伴
: 這個經驗也是從之前處女作的慘痛教訓而來,因為在製作PHP的程式時
: HTML碼和PHP程式會混雜在一起,程式大了之後,要調整使用介面會非常困難
: 後來經由網站http://www.php5.idv.tw/documents/smarty/smarty20040209.htm
: 的幫助下,瞭解了樣板引擎Smarty,也用了Smarty改寫了我的程式
: (果然是初學者...天天都在改寫程式XD)
: 改寫了之後,真的覺得犧牲的效能是很值得的(雖然說也不會犧牲太多)
: 不但整個程式的架構更明確,而且可以更方便的處理使用者介面的安排
: 寫PHP程式更可以專注在程式的邏輯上,要顯示什麼東西就先往Smarty丟就對了!
: 奉勸各位要開發PHP程式的夥伴,如果你的PHP程式(邏輯部份)超過200行
: (某本書說的,但是我不知道根據是甚麼)
: 請一定要使用樣板引擎!如果你覺得目前的樣板引擎都不好用
: 就自己寫一個吧~大陸的Discuz討論區似乎也是自己製作樣板引擎
以前就聽過朋友說有所謂的樣板引擎
但是一直沒有去了解過
剛剛到上面連結大概逛了一下
看了他的原理架構後
好像比較適合美術與程式分開的Team去使用
且適合一隻程式去套不同的網頁風格
他的觀念簡單的說也就是把PHP編譯過的檔案暫存成html
之前自己架過一個網站
由於流量太大 SQL常常掛點
後來我的解決方法是
把PHP跑過的檔案另存成暫存檔
然後用PHP去判定資料庫的更新時間是否比暫存檔還新
減少去讀SQL的次數
而部分較少去更新的檔案就用PHP去產生htm檔(例如首頁)
連PHP的編譯都省略
原本需要五台伺服器分流 改寫後只需要一台就可以輕鬆勝任
講了一堆~~
我想問的是
樣板引擎Smarty 這類程式
他是利用什麼原理
去判定資料是否有更新過??
因為我想了解他是否有什麼方法可以在減少伺服器的負載 ^^
還是說
他只是方便使用者的程式 @_@?
如果遇到需要讀SQL的程式
必須讀了SQL後才知道是否有更新過
是否會犧牲更多效能 @@?
因為最近在弄另一個網站
正在思考新的架構 ^^
剛好看到這篇文章
想找看看有沒有新的方式可以用
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.20.189.134
推
11/22 02:55, , 1F
11/22 02:55, 1F
推
11/22 12:40, , 2F
11/22 12:40, 2F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章