最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHPCMS的使用小結(jié)

 更新時間:2010年09月20日 01:04:19   作者:  
前段時間仔細(xì)看了一下PHPCMS這套開源的系統(tǒng),實現(xiàn)了程序與模板分離,覺得寫得真的不錯。本人很少關(guān)注開源系統(tǒng),尤其是PHP的,覺得PHP本身就是一個寵大的函數(shù)庫,不過幾千個系統(tǒng)函數(shù)確實解決了不少問題。
下面我講講關(guān)于這套系統(tǒng)的加載流程

定義根目錄,定義include目錄
加載核心文件
配置文件'config.inc.php'
全局函數(shù)'global.func.php'
目錄操作函數(shù)'dir.func.php'
url相關(guān)函數(shù)'url.func.php'
數(shù)據(jù)輸出相關(guān)類'output.class.php'
權(quán)限類'priv_group.class.php'
時間處理類'times.class.php'
加載語言數(shù)組'phpcms.lang.php'
加載數(shù)庫存類'db_mysql.class.php'
定義常量,大部分我們常用的信息如IP,HTTP_REFERER,SCRIPT_NAME...一律用常量
獲得變量,從$_POST,$_GET,$_COOKIE,-> extract
讀取CACHE,cache_read函數(shù)大部分都是讀取的一些數(shù)組文件,然后extract (extract每個數(shù)組都別忘了unset)
獲得當(dāng)前$mod,默認(rèn)是PHPCMS
判斷用戶是否登錄
讀取會員組權(quán)限
讀取模板文件,通過template函數(shù)
首先會讀取根據(jù)參數(shù)生成cache模板php文件
判斷是否存在該文件并且該文件 TPL_ROOT.TPL_NAME.'/'.$module.'/'.$template.'.html'生成日期是否等于TPL_CACHEPATH.$module.'_'.$template.'.tpl.php',否則重新編譯和生成tpl文件
讀取tpl文件


  這套CMS的優(yōu)點在于程序與模板分離,將常用的數(shù)據(jù)通過以數(shù)組形式存取在文件上面,提升了很高的性能,不用每次都從數(shù)據(jù)庫來讀取,然后就是template,通過自帶的語法函數(shù)編譯后存取為tpl增加了模板的靈活性,美工不用懂得PHP語法,也能靈活的寫布局;里面自帶的TAG功能也不錯。

  缺點在于,一次性加載了太多的不需的文件在內(nèi)存中,尤其是都是以變量和數(shù)組形式,不管是否用得著。

  亮點在于,可以很方便生成HTML,彌補了缺點,總體來說架構(gòu)和思路相當(dāng)不錯,值得學(xué)習(xí)和二次開發(fā)!

相關(guān)文章

  • PHP多文件上傳類實例

    PHP多文件上傳類實例

    這篇文章主要介紹了PHP多文件上傳類,實例分析了php實現(xiàn)多文件上傳的原理與實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • PHP Laravel門面的實現(xiàn)原理詳解

    PHP Laravel門面的實現(xiàn)原理詳解

    在Laravel中,門面為應(yīng)用服務(wù)容器中綁定的類提供了一個“靜態(tài)”接口,使得我們可以不用new這些類出來,就可以直接通過靜態(tài)接口調(diào)用這些類中的方法。本文就來詳細(xì)聊聊Laravel門面的實現(xiàn)原理,希望對大家有所幫助
    2023-02-02
  • PHP封裝的mysqli數(shù)據(jù)庫操作類示例

    PHP封裝的mysqli數(shù)據(jù)庫操作類示例

    這篇文章主要介紹了PHP封裝的mysqli數(shù)據(jù)庫操作類,涉及php針對mysqli數(shù)據(jù)庫的連接、增刪改查、分頁、排序等相關(guān)操作技巧,需要的朋友可以參考下
    2019-02-02
  • PHP單例模式Singleton Pattern的原理與實現(xiàn)介紹

    PHP單例模式Singleton Pattern的原理與實現(xiàn)介紹

    單例就是單實例的意思,即在系統(tǒng)全局,一個類只創(chuàng)建一個對象,并且在系統(tǒng)全局都可以訪問這個對象而不用重新創(chuàng)建。本文將通過示例為大家詳細(xì)講解Java單例模式的使用,需要的可以參考一下
    2023-03-03
  • php使用preg_match()函數(shù)驗證ip地址的方法

    php使用preg_match()函數(shù)驗證ip地址的方法

    這篇文章主要介紹了php使用preg_match()函數(shù)驗證ip地址的方法,涉及php針對數(shù)字及字符串的正則匹配操作相關(guān)技巧,需要的朋友可以參考下
    2017-01-01
  • PHP開發(fā)實現(xiàn)快遞查詢功能詳解

    PHP開發(fā)實現(xiàn)快遞查詢功能詳解

    這篇文章主要介紹了PHP開發(fā)實現(xiàn)快遞查詢功能,結(jié)合實例形式分析了php使用快遞鳥查詢接口進(jìn)行快遞查詢的相關(guān)實現(xiàn)步驟與操作技巧,需要的朋友可以參考下
    2019-04-04
  • php獲取遠(yuǎn)程文件的內(nèi)容和大小

    php獲取遠(yuǎn)程文件的內(nèi)容和大小

    這篇文章主要介紹了php獲取遠(yuǎn)程文件的內(nèi)容和大小函數(shù)代碼,感興趣的小伙伴們可以參考一下
    2015-11-11
  • php實現(xiàn)水印文字和縮略圖的方法示例

    php實現(xiàn)水印文字和縮略圖的方法示例

    這篇文章主要介紹了php實現(xiàn)水印文字和縮略圖的方法,結(jié)合完整實例形式分析了php實現(xiàn)水印文字添加與縮略圖生成的相關(guān)步驟及操作技巧,需要的朋友可以參考下
    2016-12-12
  • 實例講解如何在PHP的Yii框架中進(jìn)行錯誤和異常處理

    實例講解如何在PHP的Yii框架中進(jìn)行錯誤和異常處理

    這篇文章主要介紹了如何在PHP的Yii框架中進(jìn)行錯誤和異常處理的實例,重點講解了使用錯誤處理器的方法,需要的朋友可以參考下
    2016-03-03
  • php實現(xiàn)微信模擬登陸、獲取用戶列表及群發(fā)消息功能示例

    php實現(xiàn)微信模擬登陸、獲取用戶列表及群發(fā)消息功能示例

    這篇文章主要介紹了php實現(xiàn)微信模擬登陸、獲取用戶列表及群發(fā)消息功能,結(jié)合具體實例形式分析了php微信接口的相關(guān)調(diào)用與操作技巧,需要的朋友可以參考下
    2017-06-06

最新評論

璧山县| 礼泉县| 讷河市| 日喀则市| 盈江县| 靖安县| 斗六市| 翁牛特旗| 左贡县| 张家川| 永吉县| 金坛市| 济阳县| 渑池县| 荣成市| 安丘市| 旌德县| 城口县| 凌源市| 晋城| 拉萨市| 黔西县| 钟山县| 德兴市| 白山市| 麻阳| 石棉县| 社旗县| 武川县| 汉川市| 西乌珠穆沁旗| 攀枝花市| 维西| 遂宁市| 三明市| 日照市| 肇庆市| 交口县| 东海县| 宁南县| 鸡东县|