发新话题
打印

ThinkPHP夜话之14:如何扩展

ThinkPHP夜话之14:如何扩展

  • 夜话之14:如何扩展
  • 推荐指数:3
  • 难度系数:5
  • 实用指数:4


虽然ThinkPHP内置的功能已经可以满足通常的开发需要,但是了解如何扩展ThinkPHP使得更加适合你的应用开发是一个项目开发团队需要关注的事情。ThinkPHP提供的仅仅是一个小小的核心,围绕他的外围可以有很多的扩展,简单的、可扩展的核心架构设计正是ThinkPHP当初的设计思想。要踏入ThinkPHP的高级使用,就不得不了解ThinkPHP拥有哪些扩展的途径和方式。

扩展应用类库
这一步是每个应用可能已经在做了,例如,你的项目Lib目录下面不仅仅包含了Action、Dao和Vo目录,而是已经开始增加新的目录,例如Common、Utils目录等,然后,你也知道可以通过
  • import("@.Common.Pay");
  • import("@.Utils.Http");

之类的方式在项目中调用了,这说明有些类库作为项目的公共类库已经抽象出来了,这个就是扩展的第一步。

扩展基类库
当你发现有很多类是经常会在不同的项目使用到的,例如邮件处理类、Pdf操作类等,而你觉得把这些类放到系统基类库的ORG包里面是最合适的,或者有些类是整个公司的公共类,就可以放到基类库的Com包里面,然后就通过下面的方式来调用
  • import("Think.ORG.Email");
  • import("Think.Com.Ibm.Utils.Array");



插件扩展
当你发现系统的默认规则无法满足你的应用需求的时候,例如,你想采用特殊的Dispatch处理方式、实现特殊规则的静态缓存、需要额外的数据库驱动支持、增加过滤规则等,你或许会想到要通过插件的方式来增强了,因为插件机制就是为这些特殊的开发需求服务的,不过在这之前,最好首先检查官方的更新列表检查系统是否已经实现了你要的功能,以免你重复工作,哈哈~如果你觉得你的应用需求并不是特例,可以提交官方,官方会考虑是否纳入开发计划。

标签扩展
是否觉得官方内置的模板引擎不够用了,不用担心,尝试自己增加和扩展标签库和标签吧,你又会有新的发现和体会,ThinkPHP独有的XML标签库让你更加容易定制和使用视图。

怎么,觉得上面的扩展还无法满足你的需求麽~那么请告诉我,由官方类给你建议吧!
一個偽裝成白癡的天纔!

TOP

发新话题