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等)

  • 相关阅读:
    TortoiseSVN 使用详细步骤(三):安装
    TortoiseSVN使用详细步骤(二)
    TortoiseSVN使用详细步骤(一)
    IIS7下访问ashx页面,显示404
    Learning Python 008 正则表达式-003 search()方法
    Learning Python 008 正则表达式-002 findall()方法
    Learning Python 008 正则表达式-001
    Learning Python 007 基本语句
    Learning Python 006 list(列表) 和 tuple(元组)
    Learning Python 005 字符串和编码
  • 原文地址:https://www.cnblogs.com/jdbeyond/p/11351682.html
Copyright © 2011-2022 走看看