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有控制器嗎的詳細內容,更多請關注TW511.COM其它相關文章!