为了追求简洁高效、符合自己的习惯,做的一个简单的php mvc框架。
处理流程如下:
2、init.php 负责初始化常量、全局变量、开发环境和数据库等配置信息,include library/ 里面 基本的函数库和class。【 代码】
3、run.php 负责根据 uri 解析出 controller 和 action 、以及params,然后调用对应/project/controller/目录中的contrller class文件,执行action。【 代码】
目录结构如下:
/project/
|~application_admin/ ----顾名思义,这是后台,网址:admin.domain.com
|~application_api/ ----对外提供web service的功能部分,网址:api.domain.com
|~application_www/ ----你猜
| |~controller/ ----mvc 的controller calss部分
| | |-index.php
| | |-user.php
| |~public/ ----www.domain.com 绑定目录
| | |+css/
| | |+js/
| | |+upload/
| | |+images/
| | |+editor/
| | |-index.php
| |~view/ ----php混合html 的模板目录
| | |~index/
| | | |-index.php ----controller action对应的模板
| | |~user/
| | | |-login.php
| | |-template.php ----大模板 文件
| |-access.log
| |-error.log
| |-init.php
| |-route.php ----uri 的路由配置文件
|+bin/ ----放shell的,可以加入Path的
|+cache/ ----缓存文件目录
|+cookie/ ----curl存放cookie文件的
|+crond/ ----存放php编写的cron job文件的
|~library/ ----init需要载入的 function 和 class
| |+phpqrcode/
| |-action.php ----controller里每个class都要继承的Action
| |-db.php ----简单的一个继承pdo的mysql操作class
| |-function.php ----全局常用funciton
| |-JSON.php
|+logs/ ----存放日志的目录
|+model/ ----mvc 的业务逻辑部分
|+nodejs/ ----nodejs命令行执行的js文件
|+temp/
|+ttf/
|-init.php ----初始化常量、全局变量等配置信息
|-run.php ----解析uri,调用contrller action
处理流程如下:
1、web目录 /project/application_admin/public/ 中的 index.php 接收到 除静态文件外的 所有请求,然后 requeire application_admin/init.php 和 /project/init.php 和 /project/run.php
详见:uri的路由处理部分。
2、init.php 负责初始化常量、全局变量、开发环境和数据库等配置信息,include library/ 里面 基本的函数库和class。【 代码】
3、run.php 负责根据 uri 解析出 controller 和 action 、以及params,然后调用对应/project/controller/目录中的contrller class文件,执行action。【 代码】
详细代码说明:
1、/project/library/function.php 基本function部分
4、controller继承Action渲染输出html部分
5、library/db.php 简单的一个继承pdo的mysql操作class