c语言编程笔录

首页 >   > 笔记大全

笔记大全

thinkphp5有哪些实用入门进阶知识点和各种常用功能代码

更新时间:2024-01-09
ThinkPHP 5是一款适用于PHP7的高性能、简单易用且功能强大的PHP开发框架。该框架拥有着广泛的应用场景,包括Web应用程序、API服务、企业信息化系统等,是PHP开发中常用的框架之一。在原有的基础上,ThinkPHP 5增强了性能和功能,强调了面向对象和MVC的编程思想,并提供了一系列优秀的功能模块和组件,这些功能都需要程序员进行深入学习和实践。

控制器(Controller)

控制器(Controller)是整个WEB开发中最重要的一个层次,因为客户端与应用之间的调用、请求和响应等都由控制器来负责处理。ThinkPHP 5中的控制器就像一个经理,它可以管理整个应用并进行各种判断并决定下一步操作。控制器的命名规则是以Controller作为后缀名,如IndexController。控制器也可分为Admin、Home、Api等模块,命名方式例如Admin.Index/Index/index等。在ThinkPHP 5中,可以通过以下方式进行控制器的继承:

    class Base extends Controller
      {
        public function _initialize()
          {
            parent::_initialize();
          }
      }
  

另外,控制器还可以利用路由(Route)来进行控制器的URL重写。例如,通过以下代码可以实现对控制器的路由重写:

    Route::rule('index','index/index');
  

视图(View)

在MVC模式中,视图(View)是模型(Model)和控制器(Controller)之间的连接器,并负责将控制器(Controller)传送过来的数据绑定到模板上。ThinkPHP 5中使用的渲染引擎是Twig,支持自定义Ajax返回数据格式等功能。另外,ThinkPHP 5中的View默认支持多个皮肤和多级视图的嵌套。使用视图的时候,代码结构应该清晰简洁,主要采用双层遍历的方式查询输出,并且在变量输出时尽量使用“.”连接符来表示层级。以此来减少程序运算时间,提高程序的响应时间。

    {% for info in list %}
        
            {{info.id}}
            {{info.name}}
            {{info.sex}}
            {{info.tel}}
            {{info.addr}}
            {{info.info}}
            删除
        
    {% endfor %}
  

模型(Model)

在MVC模式中,模型(Model)是面向数据操作的层次,是整个应用的核心。在ThinkPHP 5中,模型通过Database类来对数据库进行读写操作,开发者可以使用原生SQL语句进行增删改查操作一一或者使用TP框架集成的Query对象查询数据库。另外,模型还支持数据自动验证、多模型关联查询、事务等功能,开发人员需要深入掌握各种常见的数据操作。在使用Query对象查询数据时,应避免使用“*”操作,因为“*”可导致冗余数据的处理以及数据读写速度变慢的问题

    class Base extends Model
      {
        protected $table = 'admin';

        public function checkUser($user,$pass)
          {
            return $this->where(array('username'=>$user,'password'=>$pass))
                    ->find();
          }
      }
  

扩展(Extend)

ThinkPHP 5提供了较多的扩展方法,并且可以自由编写自己的扩展方法,扩展方法可以在长期使用或者使用多个应用时解决问题。扩展方法可以分为基本扩展、业务扩展和框架扩展等,其中基本扩展包括了时间转换、加密解密、数据格式转换等方法;业务扩展与提供特殊业务接口的代码片段有关;框架扩展则是在原有框架代码的基础上添加了一系列的扩展模块,例如日志log、缓存cache、队列Queue和异常Exception等。

    namespace app\common\controller;

    use think\Cache;

    class Redis {
      public static function getInstance() {
        return Cache::init([
          'type'=> 'redis',
          'host'=> '127.0.0.1',
          'port'=> 6379,
          'password'=> '',
          'prefix'=> '',
        ]);
      }
    }
  

总结

总地来说,ThinkPHP 5框架为开发者提供了一系列的高效、便捷的功能,为我们的工作带来了极大的便利性。学习ThinkPHP 5框架的过程中,我们首先要掌握框架的基本概念和工作模式,然后逐步学习其中的控制器、视图、模型及扩展等重要的知识点。除此之外,还应该注重思考实际应用,并且多与其他开发者互动沟通,来寻找最佳的编程方法和解决问题的思路。随着对框架的了解程度不断深入,我们的开发工作也将更加高效,更加优秀。