# vframework **Repository Path**: dingusxp/vframework ## Basic Information - **Project Name**: vframework - **Description**: 保持 简单灵活,可渐进式扩展 的PHP框架 - **Primary Language**: PHP - **License**: BSD-2-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-03-11 - **Last Updated**: 2022-05-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README vframework ========== ### 介绍 vframework 是一个略有历史的 PHP 框架,5.2.x 以上PHP版本即可运行。 相比使用过的其它流行框架,如:lavarel、yii、hyperf,不管是编码风格的新潮,还是组件内容丰富度,都远远不及。 不过,相比这些走在新技术前列的优秀框架,PHP 语言可能还是更适合继续作为 `胶水语言、产品1.0探索者` 的定位,因此 “保持简单 和 灵活渐进” 是最重要的,这也是 vframework 的坐标。 主要特点: - 简单的数据流,保持面向页面/API 所敲即所见的快捷开发方式; - web 开发常用服务和解决方案的集成:环境适配、多应用,类资源加载、路由、语言包、日志、API服务、参数验证、CSRF token,图片处理、文件存储、数据库交互、加解密、模板引擎 等; - 组件通过抽象类统一接口,方便做升级/变更时,系统整体无需或仅需少许调整。 缺点: - 并非一个完备框架,不能学会一招走天下;相反很多功能/组件都只提供了最基础的能力,需要使用者自己按需要逐步去完善优化; - 直接使用数组作为数据模型载体,享受灵活的同时容易产生一些维护风险,需要有强迫症且良好抽象能力良好的人把关 Model 层; ### 系统介绍 #### 文件夹结构 * framework 框架目录 * config 框架通用配置目录 * language 框架内置语言包目录 * library 框架内置核心类库目录 * shell 框架辅助脚本目录 * test 框架测试代码目录 * tpl 框架目标目录 * V.php 框架核心文件 * app-demo 应用目录,名称按需修改,可以同时放多个应用(多应用时也可以搞一个 apps 目录专门放应用,对应调整入口文件引用框架核心文件的路径即可) * common-lib 应用共用的类库 #### 运行流程 ``` 核心文件 -> loadBootstrap && run() -> web MVC模式 -> Router(根据配置 web.router) -> Controller -> (Model->DAO / View / ...) -> cli 模式 -> 加载 Command && execute (如果指定) -> 其它自定义脚本代码 (可选) ``` #### 类库介绍 框架内置类库介绍见 framework 下的 [README教程](https://gitee.com/dingusxp/vframework/tree/master/framework),按需使用(实际可能多于文档写出来的)。 common-lib 下也有一些,还没有写介绍,自行取用吧; 如果你喜欢 composer,当然也可以在入口文件添加引用,理论上没有冲突。 ### 安装 你可以在github/gitee上下载源码包或者直接fork并clone项目到本地。[传送门](https://gitee.com/dingusxp/vframework) 建议的服务器环境: * PHP >= 7.1 * PDO PHP 扩展 (如需要使用到 MySQL 客户端) * Redis PHP 扩展 (如需要使用到 Redis 客户端) ### 开发 很简单,直接载入IDE,并参考 app-demo ([README教程](https://gitee.com/dingusxp/vframework/tree/master/app-demo))开撸。