# phpMore **Repository Path**: sujunli/phpMore ## Basic Information - **Project Name**: phpMore - **Description**: phpMore是一个基于Swoole的高性能、多用途、分布式的php应用程序框架 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2019-04-15 - **Last Updated**: 2023-07-04 ## Categories & Tags **Categories**: webframework **Tags**: None ## README # phpMore #### 介绍 phpMore是一款高性能、多用途、分布式的php应用程序框架,常驻内存型PHP框架,摆脱传统PHP运行模式在进程唤起和文件加载上带来的性能损失。 #### 软件架构 local目录为本地配置目录,local目录禁止放任何代码,除了php配置文件 vendor目录为用户业代码包目录或第三方目录 #### 安装教程 1、将phpMore(https://gitee.com/sujunli/phpMore.git) 拉到用户项目的根目录下 2、再将https://gitee.com/sujunli/phpMore-framework 拉到vendor/cn/gz53/framework目录下即可开发 #### 使用说明 1. 如果用户觉得不方便用,可省去Dao层,也可以省去Bo对象,Po、Form、Vo对象,甚至一些Sdk都可以省去,但建议三层结构,因为清晰的计算输入输出。 2. 核心框架的三层结构的各个层的对象方法的参数都是用接口方式,返回值要么true,要么false,说明方法是要么继续要么返回。 3. CLIApplication是PHP的命令运行模式的应用程序,为单进程运行。 4. ScriptApplication是PHP的CGI运行模式的应用程序,为多进程运行(多进程由如:php-fpm提供) 5. HttpServerApplication是PHP的HttpServer运行模式的应用程序,需要swoole扩展支持,为多进程运行,常驻内存型PHP框架,摆脱传统PHP运行模式在进程唤起和文件加载上带来的性能损失。 6. WebSocketServerApplication是PHP的WebSocketServer运行模式的应用程序, 需要swoole扩展支持,为多进程运行。 7. WorkerApplication是PHP的进程池运行模式的应用程序,需要swoole扩展支持,为多进程运行,可以定义每一个进程的业务路由。 8. framework中的application为框架基本的应用程序,用户可自定义应用程序框架,其中ScriptApplication与CLIApplication主要为方便在windows下开发调试用的,因为目前windows不支持swoole, 生产环境用HttpServerApplication、WebSocketServerApplication、WorkerApplication等,ScriptApplication与CLIApplication的不同主要是一个超时与不超时, 用户可以刷新页面即可调试,命令行下运行命令也可调试。 9. phpMore与phpMore-framework是分开的,用户拉到一起就可以。 10. 原则上local目录下是没有代码文件,哪些php文件只是php格式的配置文件除了入口php文件。至于哪个AutoLoad.php 用户可使用在vendor目录下的composer加载器。 11. 用户的业务代码也是放到vendor目录,这样用户代码就可以迁移,不用吊死在一棵框架树下。建议目录结构按各自的域名存放,这样防止同名冲突。 12. 写好Service业务方法后,要在local/conf/routers与local/conf/services 分别配置路由映射与service方法入口。 13. 原则用户的Service、Dao、Sdk、Bo,Po、Form、Vo对象都要继承framework中的Service、Dao、Sdk、Bo,Po、Form、Vo类,这样可以存容器中,用户可以自定义Service、Dao、Sdk、Bo,Po、Form、Vo的子类,然后用户的其它类再继承这些子类,这样可以减少耦合。 14. 要注意常驻内存下变量数据的重置,特别是HttpServerApplication模式下。 #### QQ交流群 phpMore群一: 574968380 ![输入图片说明](https://images.gitee.com/uploads/images/2019/1017/184901_c21fd061_1027698.png "广州务商-phpMore群二维码.png") #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)