zoukankan      html  css  js  c++  java
  • tp执行流程(初版)

    入口文件

       ThinkPHP.php->

       定义了APP_PATH,Think_PATH

         runtime.php->

         再次定义常用常量,如CORE_PATH

         生成app(本项目)相关目录(build_app_dir()方法完成的) 

         接下来runtime开始调用Think.class.php 

         Think::Start();//调用Think类的Start静态方法

            Think.class.php ->

            Think::start();

            声明错误处理句柄

            声明异常处理句柄

            声明类的自动加载机制

            buildAPP,初始化app的运行

            buildAPP,初始化的意义,加载各种配置文件
            前后加载10个左右文件
            Thinkphp/conf/convention.php
            项目下的conf/config.php
            具体某一个controller的配置文件

            Think::start()把环境初始化完毕,app::run()

            APP::run()->APP::init()
            APP::init()->Dispatcher::dispatch();
            此静态方法,把地址栏的参数仔细分析
            分析出,调用哪个控制器哪个方法
            'DEFAULT_MODULE' => 'Index', // 默认模块(控制器)名称
            'DEFAULT_ACTION' => 'index', // 默认操作(方法)名称
            APP::exec()
            根据计算出来的module和action
            实例化该module并调用该action方法

           

  • 相关阅读:
    JS基础学习四:绑定事件
    常用JS事件对象
    jq 使用手册
    access数据库根据指定日期进行查询
    IP地址变动后,https://localhost:1158/em无法访问解决办法
    结构体对齐方式
    宏得到当前函数的名字
    std::list保存大量数据时,类型即是无析构函数,该list析构时会占用大量CPU
    装了vs2010 SP1后,开机速度慢
    查询SQL Server版本号
  • 原文地址:https://www.cnblogs.com/loveyouyou616/p/2799877.html
Copyright © 2011-2022 走看看