FuelPHP
- 版本:1.82
- 网站
- 发布文档
- 发布 API 浏览器
- 开发分支文档
- 开发分支 API 浏览器
- 支持论坛,供评论,讨论和社区支持
描述
FuelPHP 是一个快速、轻量级的 PHP5.4+ 框架。在这个框架层出不穷的时代,我们相信 FuelPHP 会在人群中脱颖而出。它将通过结合所有你喜欢的优秀框架的东西来实现这一点,同时去掉坏处。
FuelPHP完全兼容PHP7.3。
更多信息
有关更多详细信息,请参阅 开发维基。
开发团队
- Harro Verton - 项目经理,开发人员( http://wanwizard.eu/ )
- Steve West - 核心开发人员,ORM
- MárkSági-Kazár - 开发人员
想加入吗?
FuelPHP 开发团队一直在寻找新的团队成员,愿意帮助将框架提升到一个新的高度,并且有承诺,不仅可以制作出优秀的代码,还可以制作出优秀的文档,并为我们的用户提供支持。
你可以不申请会员资格。从发送 pull-request 开始,处理未完成的功能请求或 bug,并活跃在 #fuelphp IRC 频道。如果你的技术达到了要求,我们会注意到你,并邀请你成为团队成员。
校友会
- Frank de Jonge - 开发人员(http://frenky.net/)
- Jelmer Schreuder - 开发人员(http://jelmerschreuder.nl/)
- Phil Sturgeon - 开发人员(http://philsturgeon.co.uk)
- Dan Horrigan - 创始人,开发人员(http://dhorrigan.com)
附件、特性列表
FuelPHP 能提供什么? 使用 FuelPHP 的几个很好的理由:
一个(H)MVC 框架
FuelPHP 是一个MVC(模型 - 视图 - 控制器)框架,从设计伊始,就将可以完全支持 HMVC 作为其架构的一部分。但是 FuelPHP 仍在继续努力,还将 ViewModels(presentation models,也称为表示模型)添加到组合中,可以让您选择在 Controller 和 View 之间添加一个强大的层。 FuelPHP 还支持更多的基于路由器的方法,您可以直接路由到一个处理输入 uri 的闭包,将闭包作为控制器,并进一步执行控制。
- 完整的 HMVC 实现
- ViewModels 可以从 View 和 Controllers 中获取 View 特定的逻辑
- 直接通往闭包
模块化和惊人的可扩展能力
FuelPHP 核心套件中,几乎每个类都可以扩展,而无需更改使用它的一行代码(阅读更多的扩展核心)。您可以将更多功能封装在扩展或替换 FuelPHP 内核的软件包中,您可以将应用程序模块化为应用模块。软件包和模块也是代码重用的好方法。
- 扩展或替换 Core 类而不重写一行代码。
- 将附加功能打包到软件包中。
- 通过将其分为应用程序模块来创建模块化应用程序
安全
安全问题一直处于前沿和中心位置。开箱即用的 FuelPHP 视图将编码您的所有输出,使其安全并防止 XSS 攻击。如果您需要允许 HTML,您可以将其标记为安全的或将其清除为默认值,包括 HTMLawed。 FuelPHP 还支持使用令牌进行 CSRF 预防,输入过滤,Query Builder 将帮助您防止任何 SQL 注入攻击。框架内的几个安全功能使用 PHPSecLib 提供的功能。有关 FuelPHP 中的安全性的更多信息可以在文档中阅读。
- 输入过滤
- URI过滤
- XSS过滤
- 输出编码
- CSRF令牌保护
- 防止SQL注入
- 安全的Auth框架
Oil:命令行的力量
FuelPHP 通过称为“Oil”的实用程序利用命令行的功能。该实用程序旨在帮助您加快开发速度,提高效率并协助测试和调试,同时完全可选,如果您不是终端的粉丝。
- 代码生成,脚手架和管理生成。
- 运行数据库迁移。
- 交互式调试
- 任务 - 对于 cron 类型的活动(如导入数据和其他批处理或后台操作)很有用。
控制器和模型的基类
FuelPHP 包括一些基础类,给你一个良好的开端:
- Controller_Template -- 向控制器添加简单的页面模板功能。
- Controller_Rest -- 创建 RESTful API 的简单方法。
- Controller_Hybrid -- 将两个功能组合成一个控制器。
- Model_Crud -- 为单个表提供 CRUD 操作的所有方法。
功能强大而轻巧的 ORM 包括
FuelPHP ORM 旨在在强大的功能之间取得平衡,同时保持轻量级。它不应该是一个原则/推动替代,它是一个更轻量级的解决方案,可以承担许多竞争对手的正面。提供 OO 方法来处理数据库,执行 CRUD 操作并管理行之间的关系。
- OO 处理数据库数据和执行CRUD操作的方式。
- 所有正常关系类型:属于,一对一,许多,许多(“有和属于许多”)。
- 取得关系关系等关系(“嵌套关系”)。
- 级联保存并删除相关对象。
- 实体属性值模型实现。
- 实现模型扩展:
- 软删除功能(将记录标记为已删除,而不是实际删除)
- 时间功能(每次更新时记录的自动版本控制)
- 嵌套集功能(将分层结构(树)存储到数据库表中)
- 使用观察者更新/处理对象实例,例如在保存之前进行验证或自动更新 updated_at 属性。
ORM 模型的 API 非常类似于 Model_Crud 基类的 API,当您需要额外的功能时,它将切换到 ORM,这是相当无痛的操作。
认证框架
因为创建一个能够满足每个人的 Auth 库几乎是不可能的。FuelPHP 附带了一个设置默认界面驱动程序必须遵守的 Auth 框架。这将允许开发人员开发和共享他们自己的实现,而其他人可以使用它们作为替换,而无需更改最常见的用法。
包括两套驱动机。包括一组简单的驱动程序(简称“Simpleauth”)作为示例和 quickstart 选项。它使用的是单表来存储用户信息,以及用于基本组和角色权限的配置文件。对于更精细的权限系统,也包括基于 ORM 的驱动程序集(名为“Ormauth”)。它提供了一个功能齐全的ACL系统,具有用户、组和角色级别的权限,以及赋予更多粒度权限的操作。对于社交媒体互动,Auth 框架集成了 Opauth 库,允许您将基于 OAuth 的身份验证集成到任何使用 Auth 包的应用程序中。
- 包括用户,组和基本 ACL 的简单认证。
- 或者基于 ORM 的全功能 RBAC 认证,如果您需要它。
- 包含密码的安全散列功能(PBKDF2)。
- 用于社交媒体认证的 OAuth 集成。
- FuelPHP 中任何 Auth 库的默认界面。
使用任何模板解析器为您的视图
FuelPHP 提供了一个解析器包,它允许使用任何模板解析器来解析您的视图而不是基本的 PHP。以下库中包含驱动程序:
- Mustache
- Markdown
- Smarty
- Twig
- Haml
- Jade
- Dwoo
- Phptal
在 Parser 软件包 Vendor 文件夹中安装您的模板框架,加载软件包,然后就可以了!