zoukankan      html  css  js  c++  java
  • thinkphp5.1生命周期

      入口文件-》引导文件-》注册自动加载-》

      注册错误和异常机制-》应用初始化-》url访问检测-》

      路由检测-》分发请求-》响应输出-》应用结束

    入口文件

      文件名:index.php

      位置:public/index.php;

      用户通过入口文件,发送服务请求,是整个应用的入口和起点

      任务:定义常量,加载引导文件,不要放任何业务处理代码

      代码: require __DIR__.'/../thinkphp/base.php';

                      Container::get('app')->run()->send();

    引导文件

      文件名:base.php;

      位置:thinkphp/base.php;

      执行:加载常量->加载环境变量->注册自动加载->注册错误与异常->加载惯例配置->执行应用

    注册自动加载

      类方法:Loader::register();

      作用:将所有符合规范的类库自动加载

      执行流程:注册自动加载方法->注册系统命名空间->加载类库映射文件->注册composer自动加载->注册extend扩展目录

    注册错误和异常机制

      执行 Error::register()

    应用初始化:

      加载公共配置->加载公共扩展配置->加载应用状态配置->加载别名定义->加载行为定义->加载公共函数文件->注册应用命名空间->加载扩展函数文件->设置默认时区->加载系统语言包

    URL访问监测

      URL必须是PATH_INFO格式才允许运行。

      PATH_INFO标准格式:

      http://域名/index.php/模块名/控制器/方法名/参数/参数值/

    路由检测

      路由规则:

      路由到模块/控制器/方法(默认模式)

      路由到外部重定向地址

      路由到控制器方法

      路由到闭包函数

      路由到类的方法

    分发请求

      将用户的请求分发到对应的路由地址,完成应用的业务逻辑并返回数据

      统一使用return返回数据

      如果非必要不要用exit或者die中断

      分发请求的五种路由地址模式:

        路由到模块/控制器/方法(默认模式)

        路由到外部重定向地址

        路由到控制器方法

        路由到闭包函数

        路由到类的方法

    响应输出

      控制器正常返回的数据通常是String或者、Array的格式

      统一使用return返回数据,不是直接输出,这样可以自动调用Response::send()方法将最终的返回数据输出到页面或者客户端。并自动转换称default_return_type参数设置的格式(xml,json等)

  • 相关阅读:
    86. Partition List
    328. Odd Even Linked List
    19. Remove Nth Node From End of List(移除倒数第N的结点, 快慢指针)
    24. Swap Nodes in Pairs
    2. Add Two Numbers(2个链表相加)
    92. Reverse Linked List II(链表部分反转)
    109. Convert Sorted List to Binary Search Tree
    138. Copy List with Random Pointer
    为Unity的新版ugui的Prefab生成预览图
    ArcEngine生成矩形缓冲区
  • 原文地址:https://www.cnblogs.com/jdbeyond/p/11351682.html
Copyright © 2011-2022 走看看