itrnka / ha-framework
PHP 7.1 专业人士高抽象框架。这是框架的核心。
v1.5.0
2017-11-15 00:00 UTC
Requires
- php: ^7.1
This package is not auto-updated.
Last update: 2024-09-21 02:04:45 UTC
README
ha 框架是PHP 7.1的专业人士严格类型框架。它是一个真正灵活的框架,没有冗余,基于接口和一些可随时更改的预定义实例。此框架是通过composer安装的供应商包,具有小型的默认所需功能,可以将任何组件粘合在一起以满足代码级别的面向服务架构要求。您还可以轻松地向此概念添加所需的一切 - 自定义包、自定义ORM、自定义驱动程序...
框架架构基于访问类型:应用程序逻辑严格与访问方法和方法(例如HTTP应用程序、Rest API应用程序、移动页面、网站、控制台等)分离。
请阅读框架文档获取更多详细信息。
安装
框架可以通过ha项目骨架安装。框架仅为composer包,需要从这个简单的骨架启动。
框架亮点
- 基于PHP 7.1
- 始终严格类型,所有内容都有接口,所有内容也有标量类型和返回值类型(自动减少>50%的开发者错误)
- SEO就绪(在MVC不是好方法的情况下提供额外的路由)
- 精确的HTTP处理(头部控制,请求方法检查等)
- 适用于多个数据源(非常支持同一类型的多个实例以及不同类型的驱动程序)
- 级联数据IO操作(例如,写入SQL、Elasticsearch、缓存与从缓存、Elasticsearch、SQL读取)
- 默认ORM未实现,数据操作是开放的(我们可以在组件来自其他数据源而不是主数据的情况下具有非常复杂的对象)
- 极端的IDE支持(所有内容都是自动完成的,例如在PHP Storm中)
- 轻量级且始终可重用代码(核心功能中无无用包)
- 基于接口(所有内容都可以更改或扩展,无需大量代码重写)
- 所有内容都是实例,没有使用静态调用(非常好的依赖注入)
- 低内存消耗
- 带有类型保护的模型集合(例如,无法将类别添加到产品集合中)
- 模型属性类型提示
- 模型属性的访问不区分大小写,也不区分驼峰式和破折号式(对于数据库字段为破折号式和驼峰式属性等用例非常有用)
- 应用程序结构独立于用途(具有不同访问方法和渲染(如API、网页、移动页面、shell访问等)相同的功能;项目不仅仅是网站,网站只是我们项目的一部分)
- 功能版本控制(同一项目可以通过环境使用版本化类)
- 所有内容都可以在配置文件中进行配置,并且应用程序是从配置文件构建的(它的工作方式与docker-compose.yml类似)
- 模拟string[]、int[]、float[]、bool[]集合,以在PHP中更好地进行数组类型检查