作为一个现代化的PHP框架,我觉得需要支持下面这些功能才方便框架使用者去开发业务,如果以后有机会开发自己的框架,造轮子,可以试试支持这些功能,今天先列举出来:
php框架:
0、依赖composer,自动加载,基于MVC模式
1、注册树模式
将所有需要用到的对象注册要树上,以统一的方式调用
2、配置多层次化, 多环境化
(1)、本地、测试、生产区分配置
(2)、公共的统一配置,不同的模块,可以覆盖重写配置,
公共的配置
|
|------ 后台
|------ PC
|------ mobile
|------ api
3、RBAC角色控制,可以提供一个基本的后台UI,提供RBAC,在于快速的搭建后台。
4、各种表单组件
select
input
form
5、模板引擎 ,当然这个也不是必要的,php本身就可以,要不过要注意的是,尽量不要在视图层编写过多的逻辑,不然就违背了MVC的本意
6、AOP切面编程,可以用来做统一的验证拦截处理。
7、钩子
8、消息队列
9、脚手架,在于快速的生成基本的代码
10、缓存处理,抽象层,上层缓存,下层不同的缓存驱动,可以使file、redis、memcache等
11、表单令牌,避免重复的请求和xss
12、错误与异常处理
13、日志记录
14、封装简单高效的db操作,避免sql注入,采用参数绑定形式
15、原生session的接管
暂时列举这么多,以后再补上。