/ 根目錄
/admin 后台目錄(目錄名可更改)
/api API文件目錄,存放ucenter、PHPWind、QQ互聯、新浪微博、支付方式(支付寶,財付通、預存款等)和商品等API文件
/cache 緩存文件目錄
/control 控制器目錄(C)
/data 常用公共數據(地區、發言表情等)
/framework 核心框架目錄
/install 安裝程序目錄
/language 語言包目錄
/model 模型文件目錄(M)
/resource 資源目錄(字體、JS文件、HTML編輯器、驗證碼用字體圖片、二維碼依賴文件等)
/templates 模板文件目錄,視圖文件(V)
/templdate/default 默認的模板風格
/upload 附件目錄(商品圖、店鋪認證、會員頭像、促銷活動圖等上傳的所有圖片)
ShopNC商城系統采用MVC模式,控制器文件位於control目錄,模型文件位於model目錄,視圖文件位於templates目錄,系統框架依據act和op參數(GET/POST過來的)完成控制器調度。
控制器類文件名一般為業務名稱,類名稱一般為 “業務名稱+Control”,例如品牌控制器(control/brand.php)類名為brandControl。
模型類文件名一般為“表名稱+.model”,類名稱“表名+Model”,例如廣告模型(model/adv.mode.php)類名稱為advModel。
跟據商城業務需要,系統內置三個控制器父級類,BaseHomeControl、BaseMemberControl和BaseMemberStoreControl分別適用於前台展示、會員中心、店鋪中心三類控制器。
代碼001
控制器:
Language::read('home_brand_index');
//使用模型獲得品牌列表
$model = Model();
$brand_list = $model->table('brand')->select();
//向模板拋出內容
Tpl::output('brand_list',$brand_list);
//設置頁面標題
Tpl::output('html_title',Language::get('brand_index_brand_list'));
//輸出SEO設置信息
Model('seo')->type('brand')->show();
//調用模板展示
Tpl::showpage('brand');
代碼001
模板代碼view:
<?php defined('InShopNC') or exit('Access Invalid!');?>
<!--上面是進行合法驗證,在商城系統下的模板文件都需要進行該驗證。-->
<?php include template('home/cur_local');?>
<!--上面是在品牌展示頁面顯示當前位置,實際輸出內容為:當前位置:首頁 > 所有品牌 -->
<h2><b><?php echo $lang['brand_index_brand_list'];?></b></h2>
<!--上面是輸出標題,實際內容為:品牌列表-->
<!--$lang 數組內容為Language::read() 得到的語言包信息,-->
<?php if(is_array($output['brand_list'])){?>
<!--使用Tpl::output拋出到模板的內容,保存到了$output數組中,保存下標名稱為output方法的第一個參數值,-->
<?php foreach($output['brand_list'] as $key=>$val){?>
<!--循環輸出品牌內容-->
<div class="wrap">
<ul>
<li>
<a href="<?php echo ncUrl(array('act'=>'brand','op'=>'list','brand'=>$brand['brand_id']));?>" >
<!-- 生成跳轉URL(偽靜態或動態)-->
<span><img src="<?php echo ATTACH_BRAND.'/'.$brand['brand_pic'];?>" alt="<?php echo $brand['brand_name'];?>" /></span>
</a>
</li>
</ul> </div>
<?php }?>
<?php }?>