mcms二次開發 YzmCMS二次開發手冊

2021-10-20 21:41:18 字數 2516 閱讀 5167

yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口。

一、基本目錄結構..../              根目錄

..../cache         快取目錄[必須可寫入]

..../common        全站公共目錄[必須可寫入]

..../uploads       預設上傳目錄[必須可寫入]

..../yzmphp        程式核心目錄[不建議修改]

..../index.php     程式單一入口檔案

..../.htaccess     apache偽靜態檔案[如您不是apache軟體,可根據此規則重寫偽靜態]

..../nginx.conf    nginx下偽靜態檔案

每個模組下都有四個資料夾(common、controller、model、view)乙個檔案(index.html),這幾個檔案時必須有的,新建模組時也一定要有這幾個檔案。

---admin

------common(模組公共目錄)

------controller(模組控制器目錄)

------model(模組模型目錄)

------view(模組檢視目錄)

二、建立乙個新控制器

controller目錄中的每乙個.php檔案都是乙個控制器,控制器名稱都以.class.php字尾結尾。

新建乙個控制器:test

檔名稱:test.class.php,控制器類的類名稱與控制器檔名必須相同

//這兩行必須要,後台許可權控制

defined('in_yzmphp') or exit('access denied');

yzm_base ::load_controller('common', 'admin', 0);

//這兩行必須要,後台許可權控制

class test extends common else{

$affair->rollback();  //事務回滾

yzmcms 5.7版本新增的資料庫操作// insert方法新增第4個引數:replace

// 語法:insert($data, $filter = false, $primary = true, $replace = false)

// $data         要增加的資料,引數為陣列

// $filter       是否開啟實體轉義

// $primary   是否過濾主鍵

// $replace   是否為replace

// 返回值:  成功:返回自動增長的id,失敗:false

$data = array('title'=>'title', 'content'=>'content');

d('test')->insert($data, true);

// 新增批量插入方法:insert_all

// 語法:insert_all($data, $filter = false, $replace = false)

// $data         要增加的資料,引數為二維陣列

// $filter       是否開啟實體轉義

// $replace  是否為replace

$data = array(

array('title'=>'title1', 'content'=>'content1'),

array('title'=>'title2', 'content'=>'content2'),

array('title'=>'title3', 'content'=>'content3'),

$res = d('test')->insert_all($data, true);

m方法m是model的首字母,引數為乙個model類名稱,返回的是乙個model類物件,意為載入並例項化本模組下的model類

u方法如:u('add');

// 生成當前模組下的test控制器的add方法url位址

如:u('test/add') ;

// 生成admin模組下的test控制器的add方法url位址

如:u('admin/test/add')

說明:u('模組名稱/控制器名稱/方法名稱')

u方法可以有第二個引數,即可傳參

如:u('admin/test/init',array('id'=>1,'status'=>1))和u('admin/test/init','id=1&status=1')是等效的

四、二次開發原則

yzmcms作者開發時比較注重**簡潔、系統高效等特點,所以您在使用yzmcms做二次開發中也應該遵循以下開發原則:

1.新增功能盡量不要修改系統原檔案,建議以模組外掛程式形式開發。

2.使用者自定義全域性函式寫到「common/function/extention.func.php」檔案中,不影響系統公升級。

3.方法名稱和變數名稱都以小寫字元命名。

4.類檔案都以小寫字元命名,並以.class.php字尾結尾。

5.所有方法盡可能寫上注釋等。

mcms二次開發 YzmCMS二次開發手冊

摘要 yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有一.yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口...

postek二次開發 POSTEK二次開發介面

例項簡介 例項截圖 核心 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using ...

用友二次開發

最近在做用友nc的乙個二次開發專案,已經做了快乙個月了。在這乙個月中在感到吃力的同時也收穫了一些東西。據說用友nc平台是基於ejb的,但到目前為止我連ejb是個什麼東西都還沒搞清呢。這個系統的 分為了三個部分,public private client,分別指代ejb對應的介面 後台資料庫處理和前台...