欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

关于thinkphp优化的一点总结

程序员文章站 2022-06-12 22:28:59
...
前段时间为了写一个博客,特地使用thinkphp框架写了一个博客程序wblog,之后对其作了优化,现在感觉到了thinkphp框架的强大之处。

前期的wblog有好多thinkphp的特性没有用上,走的是开发原生态的php系统的思路。thinkphp是一个基于MVC模式的框架,一般来说业务是放在M(模型)上处理的,C(控制器)只负责组织调用M处理好的功能函数使其返回给V(视图)。可是前期的WBLOG中的C似乎肩负着业务处理和组织调控两项任务,这有违MVC的理念了。如把所有的函数都放在公共控制器CommonAction.class.php上,其余的控制器都继承公共控制器,由于函数太多,所以CommonAction.class.php显得有点雍肿,而模型Model却空闲着,什么也不做。

这次对WBlog作了优化,每个表对应着一个Model,负责处理与之相关的逻辑业务,控制器负责组织调控Model处理好的业务。我在前面的"怎样彻底删除thinkphp3.1案例blog的标签?"写过一个删除标签的方法,当初这个删除主法是放在控制器上的,现在我们把它放在模型上,对比一下。

下面这个删除函数是写在公共控制器CommonAction.class.php上的

public function deltag($recordId){         
         
      $condition['recordId'] = $recordId;//获取日记的ID   
               
     $tagged=M('Tagged');   
     $taggedlist= $tagged->where($condition)->select();//这里用select而不用find,因为一篇日记可能有多个标签   
                 
   $taggedids=array();//声明一个数组,用来装think