FssPHP 一款由symfony为底层开发的框架

纯粹技术交流分享,
symfony框架的路由,请求响应,中间件,容器注册,twig等组件,我觉得做得真的太棒,但底子也太厚重,一个composer install 能下出十几个组件包出来。所以我基于symfony的代码构建了自己的框架。

项目代码:

github.com/xuey490/novaphp
gitee.com/fsscms/NovaFrame

官方网站: www.phpframe.org/ 暂时没啥东西:blush:

欢迎大家star & fork,使用分享。

Static Badge Static Badge Static Badge zread

简介:

这是一款基于symfony的底层代码开发的轻量级,强大,快速,简单,安全的php框架。

核心特性

🚀 性能与安全

  • Workerman启动器: 使用workerman 可兼容FPM启动,一样的写法,超传统FPM 10倍以上的性能
  • Symfony 组件集成:利用 Symfony 7.x 组件实现 HTTP 基础、路由、依赖注入和缓存
  • 轻量级设计:最小开销,快速请求处理
  • 集成中间件:CSRF保护、XSS过滤、速率限制和 IP阻断等中间件
  • 路由缓存:基于文件的缓存系统优化路由加载,注解路由注入中间件
  • 日志检查:基于Monolog的强大的日志功能,日志分片切分
  • 事件管理:自由把控web开发的每个细节

🔧 开发体验

  • 多种路由选项:约定的自动路由、支持手动路由配置和基于属性的路由
  • 依赖注入:完整的 Symfony DI 容器集成用于服务管理
  • 模板灵活性:双重模板引擎支持(Twig 和 ThinkTemplate)
  • ORM 集成:ThinkORM 集成用于数据库操作
  • 数据验证:ThinkValidate 的强大数据集验证
  • 权限控制:基于php注解和DOC Comment注释,注解路由的权限设置

🛠️ 现代 PHP 特性

  • PHP 8.0+ 支持:利用现代 PHP 特性,包括属性和联合类型
  • PSR 标准:遵循 PSR-4 自动加载和其他相关标准
  • Composer 就绪:基于 Composer 的标准依赖管理

下载安装:

1.传统启动模式

  • 本地环境:php8.0 + 及以上,Redis,MySQL5.7, composer 2.x及以上
  • 从GitHub下载main版本,解压到本地目录,在根目录下运行

composer install

  • 等组件包下载完毕后,打开cmd命令行窗口,输入:

php -S localhost:8000 -t public

  • 打开浏览器,输入地址localhost:8000
  • 也可以部署到任何可以运行php的Apache或Nginx服务器上。

    2.workerman启动

  • 本地环境:php8.0 + 及以上,Redis,MySQL5.7, composer 2.x及以上
  • 从GitHub下载main版本,解压到本地目录,在根目录下运行

composer install

  • 等组件包下载完毕后,打开cmd命令行窗口,输入:

php watch.php start

  • 打开浏览器,输入地址localhost:8000
  • 也可以部署到任何可以运行php的Apache或Nginx服务器上。

应用文档

强烈推荐Zread.Ai,感谢他们提供项目文档分析生成。zread.ai/xuey490/novaphp

测试路由:

所有的控制器,都在App/controllers, 按http://localhost:8000/控制器名/动作名 访问,如下面

localhost:8000/user/add

代码质量扫描

本框架的程序代码,非常规范,冗余,重复代码非常少,也适合新手自学扩展。

鸣谢(站在巨人的肩膀上能看得更远)

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!