phpcms有控制器。 phpcms控制器是模組的類別文件,儲存在「phpcms/modules」下面,每個模組都是獨立的命名方式,類別名稱是「檔案名稱.php命名」格式;控制器類別預設繼承系統的函數庫,可以直接使用。控制器類別的類別名稱與控制器檔案名稱必須相同。
本教學操作環境:windows7系統、phpcms v9版,DELL G3電腦
phpcms有控制器。
phpcms中什麼是控制器
#phpcms控制器是模組的類別文件,儲存在phpcms/modules下面,每個模組都是獨立的命名方式,類別名稱是檔案名稱.php命名格式,控制器類別預設繼承系統的函數庫,可以直接使用。控制器類別的類別名稱與控制器檔案名稱必須相同。
新增一個控制器
下面我們就在phpcms/modules下面新建一個test資料夾,在test資料夾裡面新建一個名叫mytest.php的文件,在文件裡面加入以下程式碼:
defined('IN_PHPCMS') or exit('No permission resources.');class mytest { function __construct() { } public function init() { $myvar = '这是默认加载!'; echo $myvar; } public function mylist() { $myvar = '这是自定义list!'; echo $myvar; } }
然後我們在瀏覽器輸入以下存取方式即可
http://網域/index.php?m=test&c= mytest
預設載入init()方法
http://網域/index.php?m=test&c=mytest&a=mylist
#載入的是mylist方法
範本介紹
#前台範本
##網站前台範本位置在phpcms/templates/default/模組下面我們在控制器mytest.php檔案init()方法裡面加入載入模板方法include template('test', 'mytest', 'default');在phpcms/templates/default/目錄下面新建一個test資料夾和mytest.html檔案即可。
後台模板
後台模板檔案在phpcms/modules/模組名稱/templates 目錄中帶權限的控制器
後台控制器在phpcms/modules/admin/下面新建一個mytest_admin.php文件,文件程式碼如下:defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_app_class('admin','admin',0); class mytest_admin extends admin{ function __construct() { } public function index(){ echo "后台控制器"; } }存取位址:http://域名/index.php?m=admin&c=mytest_admin&a=index
#phpcms自訂模型
在類別上面引入模型pc_base::load_sys_class('model', '', 0);然後類別extends繼承model在__construct方法裡面加入以下程式碼:
$this->db_config = pc_base::load_config('database'); $this->db_setting = 'default'; parent::__construct();
#查詢語句
function init(){ $sql = 'select * from v9_news '; $data = $this->get_array_by_sql($sql); var_dump($data); } public function sql_query($sql) { if (!empty($this->db_tablepre)) $sql = str_replace('phpcms_', $this->db_tablepre, $sql); return parent::query($sql); } public function fetch_next() { return $this->db->fetch_next(); } //通过SQL语句查询一条结果 public function get_one_by_sql($sql){ $this->sql_query($sql); $res = $this->fetch_next(); $this->free_result(); return $res; } //通过sql语句查询数组 public function get_array_by_sql($sql){ $this->sql_query($sql); $res = $this->fetch_array(); $this->free_result(); return $res; } //释放数据库结果资源,调用底层完成 public function free_result() { $this->db->free_result(); }PHP中文網,大量的免費
PHPCMS教學,歡迎線上學習!
以上是phpcms有控制器嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!