北京建设网站的公司哪家好,网页设计实训报告总结思考,动漫网站开发,跨境电商运营主要做什么一、thinkphp第一课#xff1a;1、在网站根目录下#xff0c;建立一个项目名称orange#xff1b;2、在orange目录下#xff0c;创建一个入口文件index.php#xff1a;define(APP_DEBUG,true); //开启调试模式require(../TP/ThinkPHP.php);?3、下载thinkphp核心包并解…一、thinkphp第一课1、在网站根目录下建立一个项目名称orange2、在orange目录下创建一个入口文件index.phpdefine(APP_DEBUG,true); //开启调试模式require(../TP/ThinkPHP.php);?3、下载thinkphp核心包并解压放在网站根目录下(与orange同级这样做的目的是为了方便多个项目调用。如果你只有一个项目那么可以放在orange目录下)。我这里文件夹名改成了TP。4、在浏览器打开 http://localhost/orange/便可以看到thinkphp的欢迎页面了。5、同时 你也会发现在orange目录下创建了一系列的目录。二、浏览器访问 http://localhost/orange/ 时发生了什么think的执行流程是怎么样的(1)第一步引入框架下的 thinkphp.php// ThinkPHP 入口文件//记录开始运行时间$GLOBALS[_beginTime] microtime(TRUE);// 记录内存初始使用// PHP5.2及以后的版本提供了一个编译选项允许不编译此函数(memory_get_usage)。也就是有可能不存在此函数所以先进行判断define(MEMORY_LIMIT_ON,function_exists(memory_get_usage));if(MEMORY_LIMIT_ON) $GLOBALS[_startUseMems] memory_get_usage();//计算当前应用页面的绝对地址(调用页面所在的目录)//本实例APP_PATH项目目录——D:/www/Apache2.2/htdocs/orange/defined(APP_PATH) or define(APP_PATH, dirname($_SERVER[SCRIPT_FILENAME])./);//计算出运行临时目录如果手工设定RUNTIME_PATH则以手工定义的常量为准//本实例RUNTIME_PATH临时目录——D:/www/Apache2.2/htdocs/orange/Runtime/defined(RUNTIME_PATH) or define(RUNTIME_PATH,APP_PATH.Runtime/);//是否开启调试选项如果定义了常量则以定义的为准未定义则为flase//如果不开启调试则在项目目录下有一个~runtime.php的缓存。具体见框架目录下的runtime.php代码//我们在本地做测试需要在入口文件开启调试即修改后立即生效如果出错页面会输出详细的错误信息defined(APP_DEBUG) or define(APP_DEBUG,false); // 是否调试模式//模式不同的模式生成不同的runtime.php。暂时用不着//比如定义一个mini,则生成~mini_runtime.php$runtime defined(MODE_NAME)?~.strtolower(MODE_NAME)._runtime.php:~runtime.php;//根据模式算出运行文件的路径 ~runtime.php//本实例RUNTIME_FILE运行文件的路径——D:/www/Apache2.2/htdocs/orange/Runtime/~runtime.phpdefined(RUNTIME_FILE) or define(RUNTIME_FILE,RUNTIME_PATH.$runtime);if(!APP_DEBUG is_file(RUNTIME_FILE)) {// 部署模式直接载入运行缓存require RUNTIME_FILE;}else{ //第一次运行时走这条路线// 系统目录定义defined(THINK_PATH) or define(THINK_PATH, dirname(__FILE__)./);// 加载运行时文件//THINK_PATH 为框架的路径require THINK_PATH.Common/runtime.php;}thinkphp.php文件定义了常量app_name和think_path(大写)并引入runtime.php(2)第二步加载框架下的 Common/runtime.php文件1)、再次定义了一些常量具体见源码2)、创建项目目录结构(由build_app_dir()方法创建3)、如果app_dubug设置为false则把核心加载文件进行编译。否则删除编译文件即项目下的~runtime.php文件4)、调用框架TP下的 lib/core/Think.class.php 文件——执行入口 Think::Start()。(3)第三步执行框架TP下的 lib/core/Think.class.php 的start()方法1)、接第二步开始执行入口文件Think::Start()。包括声明错误处理句柄、异常处理句柄并声明类的自动加载机制2)、Think::buildApp(); //初始化app运行即项目预编译加载项目的各种配置文件大约有10个文件左右。3)、加载完配置文件后执行app::run(4)第四步执行框架下的 lib/core/App.class.php下的run方法1)、执行app下init()静态方法分析url得出调用哪个控制器。2)、执行app下exec静态方法根据计算出来的模型和方法实例化该module并执行action相应的方法。本实例找到的项目下 lib/action目录下的 IndexAction.class.php并执行index()方法。经过了以上这么多的步骤我们终于是看到了浏览器上显示的 thinkphp欢迎页面。