您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程

phpcms有控制器吗?怎么新增一个控制器?

丁倍卫2025-05-16phpcms教程已有人查阅

导读phpcms有控制器。phpcms控制器是模块的类文件,储存在“phpcms/modules”下面,每个模块都是独立的命名方式,类名是“文件名+.php命名”格式;控制器类默认继承系统的函数库

phpcms有控制器。phpcms控制器是模块的类文件,储存在“phpcms/modules”下面,每个模块都是独立的命名方式,类名是“文件名+.php命名”格式;控制器类默认继承系统的函数库,可以直接使用。控制器类的类名称与控制器文件名必须相同。
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();
}

本文标签:

很赞哦! ()

相关源码

  • pbootcms模板(自适应手机版)红色响应式单位机构类网站自适应响应式单位机构网站模板 | PbootCMS内核开发为机构组织设计的响应式网站模板,采用PbootCMS内核开发,支持一键替换行业内容,满足多元化场景需求。查看源码
  • (自适应响应式)html5蓝色智能水表营销型网站pbootcms模板下载PbootCMS内核开发,为智能水表企业打造的营销型网站解决方案,本模板基于PbootCMS内核开发,为智能水表及相关行业企业设计,采用HTML5+CSS3技术构建,具有响应式布局。查看源码
  • (自适应响应式)超市仓储仓库货架展架网站pbootcms源码下载本模板为货架展架、仓储货架行业量身打造,采用PbootCMS内核开发,充分考虑了货架产品展示和企业形象展示的需求。模板设计简洁大方,突出产品特点,能够有效展示各类货架产品的规格参数和应用场景,帮助访客快速了解企业核心业务和产品优势。查看源码
  • (自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码
  • (自适应)证书授权书防伪查询系统pbootcms模板本模板基于PbootCMS系统开发,为各类证书查询机构设计,可快速构建高效安全的证书核验平台。采用响应式布局技术,自动适配手机端操作,支持批量导入证书数据,提供便捷的查询接口,满足机构证书管理及用户在线核验需求。查看源码
  • 帝国CMS7.5手游资讯下载综合门户免费网站模板本模板基于帝国CMS7.5内核开发,为手游打造的综合门户网站解决方案。模板设计充分考虑了手业的特性,包含游戏资讯发布、手游下载、礼包发放、开测信息等核心功能模块,满足手游门户网站的各项业务需求。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐