• tp5生命周期


    tp5生命周期:

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

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

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

    入口文件:

      文件名:index.php

      位置:public/index.php;

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

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

      代码:define('APP_PATH'.__DIR__.'/../application/');

          require __DIR__.'/../thinkphp/start.php';

    引导文件:

      文件名:start.php;

      位置:thinkphp/start.php;

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

    注册自动加载:

      类方法:Loader::register();

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

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

    注册错误和异常机制:

      执行Error::register()注册错误和异常处理机制

      应用关闭方法:thinkError::appShutdown

      错误处理方法:thinkError::appError

      异常处理方法:thinkError::appException

    应用初始化:

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

    URL访问监测:

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

      PATH_INFO标准格式:

      http://域名/index.php/(模块名)index/(控制器)user/(方法名)add/id/10/name/jack(参数键值对)

      PATH_INFO兼容格式:

      http://域名/index.php?s=/模块名/控制器名/方法名&参数键值对

    路由检测:

      路由规则:

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

      路由到外部重定向地址

      路由到控制器方法

      路由到闭包函数

      路由到类的方法

    分发请求:

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

      统一使用return返回数据,不用echo直接输出、

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

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

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

        路由到外部重定向地址

        路由到控制器方法

        路由到闭包函数

        路由到类的方法

    响应输出:

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

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

  • 相关阅读:
    一生要做的99件事
    Flash 简单的Mouse.hide()
    [转]FCKeditor
    [转]pv是什么意思?什么是pv值,pv访问量?网站pv是什么?
    CSS:用DIV+CSS实现表格形式的数据排列
    css "Float"
    Jemin的div+css测试文件
    原来
    我终于知道什么情况下得用table了
    转的 关于div 的重叠
  • 原文地址:https://www.cnblogs.com/liu-heng/p/7808438.html
Copyright © 2020-2023  润新知