phpcms二次開發之base.php的橋樑作用_PHP教程

來源:互聯網
上載者:User
PHPCMS是採用MVC設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行項目部署和訪問,無論訪問任何一個模組或者功能,只有一個統一的入口。

入口程式是在前期處理使用者請求的引導程式。它是唯一一個可以被終端使用者可以直接請求啟動並執行。

PHPCMS架構入口檔案base.php:

檔案路徑:根目錄/phpcms/base.php 程式碼片段如下:

該檔案為架構入口檔案,包含執行個體化系統/模組類方法,調用系統/模組方法,系統常用常量等。如:

pc_base::load_model('*_model') 載入資料庫模型 類

pc_base::load_sys_class('classname') 執行個體化系統類別

pc_base::load_app_class('classname’,’admin') 執行個體化模組類

pc_base::load_sys_func (‘funcfile’) 調用系統函數庫

pc_base::load_sys_func('global','test'); //載入模組函數庫(調用test模組的global函數包)


執行個體化一個應用
檔案路徑:根目錄/index.php

這段代碼首先載入了 phpcms 架構的引導檔案 base.php,然後調用其靜態方法creat_app()根據指定的設定檔建立了一個 Web 應用程式執行個體並運行。


資料庫設定檔database.php的調用
檔案路徑:根目錄/caches/configs/database.php

這段代碼首先使用 pc_base::load_app_func()載入了index模組自訂的函數庫global.func.php,這樣就可以隨心所欲地調用global.func.php自訂的函數了。使用pc_base::load_config()靜態方法載入了phpcms的資料庫設定檔database.php,擷取資料庫的配置資訊,這樣可以擺脫PHPCMS架構的局限性,使用原生態的PHP mysql去進行二次開發。

執行個體化模組類

這段代碼使用pc_base::load_app_class()方法執行個體化admin模組的admin.class類。

由此我們知道,不管我們是調用PHPCMS架構裡面的系統類別或函數庫還是調用自訂的模組類或函數庫等,我們都可以在base.php裡找到需要的調用方法,所以PHPCMS二次開發,弄清base.php裡面的靜態方法至關重要。

http://www.bkjia.com/PHPjc/440257.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/440257.htmlTechArticlePHPCMS是採用MVC設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行項目部署和訪問,無論訪問任何一個模組或者功能,只...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.