stephp框架介绍
框架特点
体积小,简单易用
基于namespace自动加载类库
低耦合,依赖注入,易扩展
强大url及路由处理能力
强大缓存处理方式
灵活的配置
目录结构
project # 项目根目录
├─app # 应用目录
│ └─home # 模块
│ ├─controller # 控制器
│ ├─model # 模型
│ └─view # 试图
│ ├─index # 对应于IndexController->indexAction.
│ └─layout.php # layout
├─assets # 该目录可以自定义,默认前端采用seajs模块化开发结构
│ ├─images # 图片
│ ├─js # 脚本
│ └─css # 样式
├─cache # 缓存目录及日志默认
├─config 配置文件
│ ├─config.php # 应用配置
│ ├─database.php # 数据库配置
│ └─router.php # 路由配置
├─data # 数据存放
├─library # 系统类库
│ ├─cache # 缓存处理
│ ├─core # 系统初始化核心处理
│ ├─di # 依赖注入
│ ├─db # 数据库操作
│ └─util # 基础工具类
├─model # 数据库模型
├─service # 业务逻辑处理
├─.htaccess # 去除url上index.php
├─index.php # 入口文件
└─README.md # 简单说明文档
命名规则
遵循骆驼峰命名规则,类名需要首字母大写
控制器: 控制器名称+Controller.php 控制器类名和文件名相同 例: TestController.php,控制器类名:TestController
控制器方法: 方法名+action 例: testAction();
控制器文件位于当前模块下的controller目录
模型文件位于当前模块下的model目录
视图文件位于当前模块下的view目录
特别注意
项目是基于namespace自动引入类库,因此类名所在目录命名必须为小写,文件名必须和类名一致,类文件必须加上命名空间(以项目跟目录为起始,可将目录首字母大写,如:Library/Core即library/core目录)
执行流程
打开url->加载类库->解析url->检查是否经过路由->分陪mvc->执行控制器方法->数据处理->视图输出
已有案例
查看文档