模块开发
模块存放目录在app目录下
文件名或者文件夹称必须全部为小写
插件开发
插件存放目录在app/plugin目录下
文件名或者文件夹称必须全部为小写
模块及插件目录
/admin/ 后台目录
/home/ 前台目录
/user/ 会员目录
/view/ 视图目录
/function.php 如果存在自定义函数库会自动加载
/install.php 执行安装时必不可少的文件
/data.sql 执行安装时必不可少的mysql数据库导入文件换行必须使用\r\n
/route.php 路由文件
文件名或者文件夹称必须全部为小写
install.php文件配置
return [
'name'=>'模块名称',
'table'=>'预定义数据表前戳也就是data.sql里的前戳如news_',
'developer'=>'开发人',
'email'=>'email',
'firm'=>'所属公司',
'version'=>'版本号',
'update'=>'最后一次更新时间',
'initial_name'=>'模块名称如news'
];
/route.php 路由文件
命名空间使用 namespace 模块名称\route;
利用u()函数生成网址
public function make_url($data=[])
home的路由方法
public function route(){
..
}
目录admin、user目录下必须存在controller目录
如以下
/admin/controller/index.php
命名空间使用 namespace 模块名称\admin\controller;
继承控制器
use \temmoku\admin;
文件名称必须为小写
文件名或者文件夹称必须全部为小写
/home/controller/index.php
命名空间使用 namespace 模块名称\home\controller;
继承控制器
use \temmoku\controller;
文件名称必须为小写
文件名或者文件夹称必须全部为小写
/user/controller/index.php
命名空间使用 namespace 模块名称\user\controller;
继承控制器
use \temmoku\user;
文件名称必须为小写
如果存在admin、user目录则必须存在power.php权限文件
此文件返回一个控制数组;
admin/power.php
return [
'power'=>[
"setting"=>[
'name'=>"模块设置",
"power"=>[
'index'=>['name'=>'参数设置','if_show'=>true],
]
]
...
];
]
user/power.php
return [
'articles'=>[
'index'=>'我发布的文章',
'add'=>'添加文章'
],
...
];
如果存在自定义函数库直接在模块或者插件目录下创建function.php会自动加载
自定义函数库
如果存在自定义函数库直接在模块或者插件目录下创建function.php会自动加载
视图模板目录路径
后台目录
view/admin/模块or插件名称/pc/ 电脑视图目录
view/admin/模块or插件名称/wap/ 手机视图目录
view/admin/模块or插件名称/wechat/ 微信视图目录
文件名或者文件夹称必须全部为小写
前台目录
view/home/模块or插件名称/pc/ 电脑视图目录
view/home/模块or插件名称/wap/ 手机视图目录
view/home/模块or插件名称/wechat/ 微信视图目录
文件名或者文件夹称必须全部为小写
会员中心目录
view/user/模块or插件名称/pc/ 电脑视图目录
view/user/模块or插件名称/wap/ 手机视图目录
view/user/模块or插件名称/wechat/ 微信视图目录
文件名或者文件夹称必须全部为小写
变量传递
继承主控制器后使用$this->assign('变量名称',[变量或数组]);
视图模板文件后戳
模板后戳必须为.tpl
视图输出
继承主控制器后使用$this->display(tpl('模板名称'));
如$this->display(tpl('index'));
使用的文件 view/home/模块or插件名称/自动判断设备/index.tpl;如$this->display(tpl('index/index'));
使用的文件 view/home/模块or插件名称/自动判断设备/index/index.tpl;程序会自动判断是否使用哪个类型的视图模板