# qapp **Repository Path**: withu2018/qapp ## Basic Information - **Project Name**: qapp - **Description**: QAPP3是一套能够快速开发web应用、api接口系统、文档系统、网站的CMF系统 - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: https://qapp.1e9.cc/ - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 2 - **Created**: 2020-03-17 - **Last Updated**: 2025-08-06 ## Categories & Tags **Categories**: cms **Tags**: None ## README ![logo](src/public/install/qapp.png) # QAPP基于UCMS进行升级 QAPP是一套能够快速开发web应用、api接口系统、文档系统、网站的开发框架 详细文档,请访问:https://qapp.1e9.cc ## QAPP在UCMS(uuu.la)基础上做了以下升级 1. 后台界面的变更 2. 增加开发模式,开发模式可在后台显示栏目cid和字段名称 3. 增加一些简单函数,帮助快速开发,可查看web/inc/lib.php文件 4. 目前QAPP支持SQLITE、MYSQL数据库 5. 增加用户发文章的统计,请在可在public/config.php修改ArticleTable常量为要统计的表名 6. 默认模板引擎可在public/config.php中配置 7. 支持子目录 8. 自动上传远程图片到本机服务器中 9. 可通过修改inc/config.php中的AccessControl,实现js的post跨域 10. 默认按照了markdown插件 11. 前端资源存放目录在web/res目录中,可通过getCss getJs getImg getAny 获取res目录中的文件 12. 增加日志系统,可通过log_*向文件、数据库、页面输出日志 13. 增加缩略图制作函数,sltMaker,可查看web/inc/lib.php文件 14. 去除后台所有外链,去除后台第三方登录功能,去除ucms遗留的header 15. 增加二维码生产库,浏览器直接访问 `http://yourdomain/qr/https://qapp.1e9.cc`,既能够生成`https://qapp.1e9.cc`网址的二维码,需要添加伪静态 16. 添加安装功能 17. full版本添加本地文档 18. full版本添加本地博客 ## 开始 ### 要求 1. Linux、Windows、macOS 2. 支持PHP7.4、PHP8及以上版本 3. PDO Sqlite或PDO Mysql ### 可选 1. Memcache 2. Redis ### 服务器 1. Nginx+rewrite 2. Apache+伪静态模块 3. IIS+php ### 配置 1. web服务器根目录设置为public ### 伪静态 ``` nginx 将public目录下的nginx.txt打开,放在站点配置文件中,具体请参考nginx伪静态配置 apache 如果apache没开启.htaccess或伪静态组件,请先开启 在public目录下已经配置了.htaccess文件 IIS6 请先安装ISAPI_Rewrite组件 public目录下已配置好httpd.ini文件 IIS7以上 请确保iis已经安装官方URLRewrite组件。 public目录下已配置好web.config文件 ``` ### 数据库配置 ``` 在public目录中的config.php中进行数据库配置 支持 sqlite 和 mysql sqlite 使用的驱动是sqlitepdo sqlite 的文件如果为 auto,则系统会自动生成数据库存放在data文件夹内 也可以自己设定数据库文件,如 'file' => SystemRoot . '../data/123.db' mysql mysql使用的驱动是mysqlpdo mysql数据库需要手工刀数据库管理器中创建,然后导入 data文件夹内的 mysql.sql 系统才能正常使用 数据库操作方法 M() 内置BD类 getMedoo() Medoo轻量级数据库类 redBean ORM库 快捷函数,两套栏目和文章操作函数 qqq_*() uuu_*() 其他配置可参考public目录下的config.php文件中的注释 ``` ### 路由 ``` 优先级别 1、application目录中的router.php 2、Admin后台管理中的路由配置 3、栏目配置中的页面路由 router.php中的配置方式请参考该文件中的案例 uri支持多个,通过英文分号分割; 控制器可以直接是一个页面文件 也可以是一个符合PSR-0规范的类 三个地方的配置都支持相同的配置方式 router.php和后台路由中的配置都支持访问方式的选择 页面路由无法选择访问方式,默认支持为ALL(GET、POST、PUT、DELETE都支持) 后台配置中还可以直接创建控制器文件 ``` ### 视图 ``` 目前支持三种模板引擎 Smarty view_smarty() Twig view_twig() Mustache view_mustache() view支持多级文件夹,在控制器中调用view_xxx()即可返回对应的模板引擎类的实例 请参考默认案例 ``` ### 数据模型 ```html 数据模型同样支持以下操作数据库方式 model() 加载模型 ``` ## 协议 1. QAPP使用MIT协议 2. 如果想捐赠 QAPP 您可以转账 支付宝:271833059@qq.com 3. 发现漏洞或其他问题 请联系 一路有你,QQ:271833059 邮箱:ifc@1e9.cc ## 参考网站: https://qapp.1e9.cc