background image

 

除了 MVC 模式实现、Dispatcher 调度器、模板引擎等常见功能外,FleaPHP 框架还
拥有许多独一无二的特点:

 

简单、容易理解的 MVC 

 

模型

不像其他流行的框架,FleaPHP 

 

提供的 MVC 模型注重简单和容易理解。例如 

FleaPHP 不要求开发者从特定的类派生自己的控制器类和业务模型类。

 

易于使用、高度自动化的数据库 CRUD 

 

操作

FleaPHP 

 

采用 TableDataGateway 设计模式来封装数据表操作。

FLEA_Db_TableDataGateway 

 

类不但提供了容易使用的 CRUD 操作,还实

现了数据表之间的关联操作。同时,FleaPHP 没有像其他框架那样将每一行记

 

录都封装为一个对象(毫无疑问这会产生明显的性能问题),而是利用 PHP 
强大的数组来保存和传递数据。

 

尽可能少的配置

 

虽然像数据库联接信息等配置仍然是不可少的,但 FleaPHP 应用程序通常只

 

需要设置几个选项,即可在各种环境中运行良好。而且 FleaPHP 的所有设置都

 

采用 PHP 数组来保存,不但容易理解,而且省掉了解析、缓存等不必要的过程,
提高了性能。

 

高度可配置能力

 

虽然 FleaPHP 

 

自动化程度很高,但 FleaPHP 同时也拥有高度的可配置能力。

 

通过覆盖 FleaPHP 默认的选项,开发者可以获得最大程度的灵活性。让开发者
可以在适应现有代码、保持开发习惯等各方面获得好处。

 

自动化的数据验证和转义

 

即便不做任何处理,程序将数据通过 FLEA_Db_TableDataGateway 提交到
数据库前。FleaPHP 也会自动对数据进行验证,并转义特殊字符,最大程度消

 

除 SQL 注入攻击。

 

丰富的助手对象和组件

FleaPHP 附带了一些非常实用的助手对象,从生成图像验证码、处理文件上传
到通用数据验证等。这些助手对象大多是一些独立的对象,完全不依赖于 
FleaPHP 

 

框架本身。因此开发者不但可以在 FleaPHP 之外使用这些助手对象,

 

也可以方便的加入自己的助手对象。组件是比助手对象更为复杂的可重用单元。
这些组件包括基于角色的用户管理、脚手架等。利用这些组件,开发者可以很快
的完成一些常见任务,并能在这些组件基础上扩展出功能更复杂的组件。

 

与 Smarty 

 

集成