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

phpcms二次开发目录结构控制器类使用方法

凡柔2025-06-12phpcms教程已有人查阅

导读目录结构图如下:在phpcms的具体的modules目录下就是,具体的项目模块了。classes 为模块类库包functions 为模块函数库包templates 为模板包,这里通常放置含有权限控制的控

目录结构图如下:
在phpcms的具体的modules目录下就是,具体的项目模块了。
classes 为模块类库包
functions 为模块函数库包
templates 为模板包,这里通常放置含有权限控制的控制器模板,也就是后台模板。
前台模板放在phpcms/templates/default目录下
模板目录与控制器名称一致(或者自行考虑).
模块控制器类,放在模块目录下。命名的时候一般加上my开头,以此来表示这是二次开发所加入。
关于模块控制器类的创建:
两种类型:
一种:前台浏览 (不含权限控制)
二种:后台浏览 (含权限控制)
第一种控制器类的创建:
1.在模块目录下创建mytest.php文件
写入:
<?php
defined('IN_PHPCMS') or exit('No permission resource.');
class mytest{
function __construct() {
}
public function init() {
$myvar = 'hello world!';
echo $myvar;
}
public function mylist() {
$myvar = 'hello world!this is a example';
echo $myvar;
}
}
?>
关于路径访问:
使用你的项目域名:
例如: .cms.com/index.php?m=test&c=mytest&a=mylist
m 代表的是module模块
c 代表的是controller控制器
a 代表的是具体控制器下的action 方法
第二种带有权限控制的控制器的创建:
1.创建文件:mytest_admin.php
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin','admin',0);
class mytest_admin extends admin {
private $db;
public function __construct() {
}
public function init() {
$myvar = 'hi , this is my world!';
echo $myvar;
}
}
?>
关于模板文件的引用(加载):
在你的控制器具体的方法中使用:
include、require、include_once、require_once
栗子如下:
include template('test','mytest','default');
关于数据库的相关的配置:
phpcms的相关配置在:
caches/configs目录下
数据库的配置文件在caches/configs/database.php
配置形式:数组形式。
栗子:
<?php
return array (
'default' => array (
'hostname' => 'localhost',
'port' => 3306,
'database' => 'phpcmsv9',
'username' => 'root',
'password' => 'root',
'tablepre' => 'v9_',
'charset' => 'utf8',
'type' => 'mysqli',
'debug' => true,
'pconnect' => 0,
'autoconnect' => 0
),
?>
如果想用其他的配置,可以在数据中在加入一个配置的索引
<?php
return array (
'default' => array (
'hostname' => 'localhost',
'port' => 3306,
'database' => 'phpcmsv9',
'username' => 'root',
'password' => 'root',
'tablepre' => 'v9_',
'charset' => 'utf8',
'type' => 'mysqli',
'debug' => true,
'pconnect' => 0,
'autoconnect' => 0
),
'mytest' => array (
'hostname' => 'localhost',
'port' => 3306,
'database' => 'demo',
'username' => 'root',
'password' => 'root',
'tablepre' => '',
'charset' => 'utf8',
'type' => 'mysqli',
'debug' => true,
'pconnect' => 0,
'autoconnect' => 0
),
);
?>
然后在控制器中使用数据时候,可以指定需要什么样的数据库配置参数。
关于在控制器中使用数据curd:
数据库模型放在:phpcms/model目录下面
数据模型的名称可以这样:数据表名称 + _model.class.php
例如要使用一个'test'数据库,就先需要创建一个test_model.class.php数据库模型文件.
<?php
defined('IN_PHPCMS') or exit('No permission resource.');
pc_base::load_sys_class('model','',0);
class user_model extends model{
public function __construct() {
$this->db_config = pc_base::load_config('database');
$this->db_setting = 'mytest';
$this->table_name = 'user';
parent::__construct();
}
}
?>
数据库模型类名与文件名一致
$this->db_setting = '具体的数据库参数配置,可以使用默认配置default 或者自定义';
$this->table_name = '数据表名';
在控制器中的链接方式:
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin','admin',0);
class mytest_admin extends admin {
private $db;
public function showList() {
$this->db = pc_base::load_model('user_model');
$data = $this->db->select();
print_r($data);
}
}
?>

本文标签:

很赞哦! ()

相关源码

  • 帝国cms7.5品牌连锁店招商加盟商机网站模版源码本模板为招商加盟、创业投资、品牌连锁等商业领域设计,采用帝国CMS7.5内核构建,整体风格简洁大气,突出商业信任感与专业度,适合各类招商加盟项目展示、品牌连锁店宣传等商业应用场景。查看源码
  • (自适应)光伏测试仪器电站运维设备网站源码免费下载本模板为光伏检测设备与电站运维服务企业设计,采用PbootCMS内核开发,具备完整的设备展示、技术文档管理及客户服务功能模块。通过自适应结构与SEO优化框架,有效提升企业在移动端和搜索引擎中的专业形象。查看源码
  • (PC+WAP)楼承板建筑工程合金钢铁材料pbootcms网站源码下载为楼承板生产商及建筑工程企业设计的响应式网站模板,采用PbootCMS内核开发,同步适配电脑与移动设备浏览。通过模块化结构展示工程案例、产品参数等专业内容,帮助建筑建材企业建立标准化数字展示平台,提升行业专业形象。查看源码
  • 自适应响应式绿色装修公司定制家居类pbootcms网站下载(自适应手机端)响应式全屋装修定制家居类网站pbootcms模板 绿色装修公司网站源码下载PbootCMS内核开发的网站模板,该模板适用于装修定制网站、装查看源码
  • 帝国cms7.5自适应作文新闻资讯教育网站模板本模板基于帝国CMS7.5内核开发,为教育机构、培训学校等知识传播单位打造。通过自适应设计确保在手机、平板、电脑等设备上均能获得专业浏览体验查看源码
  • (PC+WAP)蓝色不锈钢簧线金属制品营销型pbootcms网站模板本模板基于PbootCMS内核开发,为不锈钢及金属制品企业量身打造。采用响应式设计,适配PC与移动设备,提供统一后台管理体验,数据实时同步更新。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐