- 1 认识 zentaoPHP 框架
- 2 入口文件
- 3 配置管理
- 4 模块管理
- 4.1 控制器(control)
- 4.2 业务逻辑(model)
- 4.2.1 定义 model
- 4.2.2 跨模块调用
- 4.2.3 获取模块名
- 4.2.4 删除记录
- 4.2.5 数据处理对象 dao
- 4.3 模版视图(view)
- 4.4 从 hello world 开始
- 4.5 模块的配置
- 4.6 模块的语言
- 4.7 模块的 CSS 和 JS 管理
- 5 类库
- 6 扩展机制
- 6.1 扩展机制简介
- 6.2 新增独立模块
- 6.3 对控制层(control)扩展
- 6.4 对模型层(model)扩展
- 6.5 对视图层(view)扩展
- 6.6 对样式表和js进行扩展
- 6.7 对语言配置进行扩展
目录结构
- 2021-09-27 10:55:56
- admin
- 715
- 最后编辑:admin 于 2022-08-06 12:19:48
zentaoPHP 框架的目录结构:
顶级目录结构
config: 公共配置文件所在的目录。默认包含了 config.php 和 my.php db: demo 应用所需要的 blog.sql framework: 包含了框架的核心文件。 js: 包含了 js 脚本文件。 lib: 类库目录,包含了常用的类文件。 module: 模块目录,每个模块为一个目录,存放在 module 目录下面。 theme: 主题文件,包含了 css 文件和图片文件。 tmp: 临时文件目录,其中包括缓存 cache 目录、log 目录。 .htaccess: apache 下面使用的 url 重写规则文件。 favicon.ico: 小图标文件。 index.php: 入口文件。
框架相关目录及调用
目录名称 | 说明 | 调用方法 |
基础目录 | 框架的根目录 | getBasePath() |
框架核心目录 | framework文件夹,即 /framework/ | getFrameRoot() |
类库目录 | lib文件夹,即 /lib/ | getCoreLibRoot() |
应用根目录 | 如果用户创建应用时未自定义,则使用默认应用路径:/app/应用名称/ | getAppRoot() |
临时文件目录 | /tmp/ | getTmpRoot() |
缓存根目录 | /tmp/chche/ | getCacheRoot() |
log 根目录 | /tmp/log/ | getLotRoot() |
config 根目录 | /config/ | getConfigRoot() |
模块根目录 | module 文件夹,即 /module/ | getModuleRoot() |
www 根目录 | 应用入口文件(index.php)所在的根目录,框架默认为 / | getWwwRoot() |
主题根目录 | theme主题文件夹,即 www根目录/theme/ | getThemeRoot() |
data 根目录 | data 文件夹,即 www根目录/data/ | getDataRoot() |
注:以上方法获取的是对应目录在系统中的绝对路径。 |
创建的新应用,其应用路径在哪里?
在 zentaoPHP 框架中,应用路径是支持用户自定义的。我们创建应用时如果没有自定义应用路径,默认应用存放路径为 框架根目录/app/应用名称/ 。所以上面其实还应该有个 app 目录,只是因为应用路径支持自定义,所以框架目录中没有强行设定 app 目录。在使用 zentaoPHP 框架时,大家根据自己设定的应用路径来创建对应目录即可。
为什么要将入口文件所在目录称为“www目录”?
zentaoPHP 框架默认将入口文件放在基础目录下,即 www 目录默认指向基础目录。但出于安全都方面考虑,框架建议在实际项目中将入口文件放在二级子目录 /www/ 目录下,所以框架将入口文件所在目录称为 “www 目录”(只是框架中未强行设计采用二级子目录 /www/ 而已)。所以我们会发现在禅道等产品源文件中,是有一个 www 目录的。而且,www 目录下除了入口文件,还包含 data/ 、js/ 和 theme/ 目录。
每个模块的目录结构
module 目录下,每个模块各是一个独立的目录,每个模块的目录结构如下:
config.php: 当前模块的配置文件,可以用来存放专门针对当前模块的配置,也可以覆盖全局性的公共配置。 css: 存放当前模块的 CSS 文件,包括公共样式 common.css 和各个方法的视图样式 methodName.css。 js: 存放当前模块的 JS 文件,包括公共 JS 文件 common.js 和各个方法的视图特效 methodName.js。 lang: 存放各个语言的文件。比如中文存为 zh-cn.php,英语存为 en.php,繁体存为 zh-tw.php。 control.php 为当前模块对应的控制器类文件。 model.php 为当前模块对应的业务逻辑类文件。 view: 存放 control 里各个方法的视图文件(方法名.html.php)。例如 index.html.php 是 index 方法的模板文件
关于 common 公共模块
common 模块需要特别说明一下: common 模块里面存储的是当前这个应用公用的语言文件、模板文件、model 文件等。 比如 lang/zh-ch.php 将存储一些公用的语言文件。 header.html.php 是模板公用的头文件。 footer.html.php 是模板公用的页脚文件。 error.html.php 则是公用的出错信息提示的模板文件。
发表评论