ThinkPHP学习手记——环境搭建

怀着激动的心情打开了thinkPHP的文档,开启了第一次php框架学习。

下载

ThinkPHP最新版本可以在官方网站(http://thinkphp.cn/down/framework.html

或者Github(https://github.com/liu21st/thinkphp/downloads)下载。
把下载后的压缩文件解压到你的WEB目录(或者任何目录都可以)

建议下载完整版,这可以再配置期间免去很多莫名其妙的麻烦

入口文件

下面附上官网的内容

在开始之前,你需要一个Web服务器和PHP运行环境,如果你暂时还没有,我们推荐使用集成开发环境WAMPServer(是一个集成了Apache、PHP和MySQL的开发套件,而且支持多个PHP版本、MySQL版本和Apache版本的切换)来使用ThinkPHP进行本地开发和测试。
接下来我们先在WEB根目录下面创建一个app子目录(这个app就是我们的项目名),然后在该目录下面创建一个index.php文件,添加一行简单的代码:

require ‘/ThinkPHP框架所在目录/ThinkPHP.php‘;

其实这个index.php无需自己创建,在下载包中已经是有的了。

单一项目

我们就可以直接通过http://localhost/访问项目了。

多项目

如果想创建多个项目,你也可以在Web根目录下面创建多个子目录来部署多个项目。每个项目目录里包含一个入口文件。

创建project1文件夹

创建并打开入口文件(index.php)

加入如下代码

<?php

define(‘APP_DEBUG‘,true); //开启调试模式

require(‘../ThinkPHP/ThinkPHP.php‘);

?>

在浏览器打开 http://localhost/project1/,便可以看到thinkphp的欢迎页面了。

ThinkPHP运行流程

浏览器访问 入口文件的时候 时,发生了什么?think的执行流程是怎么样的?

(1)第一步:引入框架下的 thinkphp.php

thinkphp.php文件,定义了常量app_name和think_path(大写),并引入runtime.php

(2)第二步,加载框架下的 Common/runtime.php文件

  • 再次定义了一些常量,具体见源码;
  • 创建项目目录结构,由build_app_dir()方法创建;
  • 如果app_dubug设置为false,则把核心加载文件进行编译。否则,删除编译文件,即项目下的~runtime.php文件;
  • 调用框架ThinkPHP下的 lib/core/Think.class.php 文件——>执行入口 Think::Start()。

(3)第三步,执行框架ThinkPHP下的 lib/core/Think.class.php 的start()方法

  • 接第二步,开始执行入口文件Think::Start()。包括声明错误处理句柄、异常处理句柄,并声明类的自动加载机制;
  • Think::buildApp(); //初始化app运行,即项目预编译,加载项目的各种配置文件,大约有10个文件左右。
  • 加载完配置文件后,执行app::run

(4)第四步,执行框架下的 lib/core/App.class.php下的run方法

  • 执行app下init()静态方法:分析url,得出调用哪个控制器。
  • 执行app下exec静态方法:根据计算出来的模型和方法,实例化该module,并执行action相应的方法。本实例找到的项目下 lib/action目录下的 IndexAction.class.php,并执行index()方法。

经过了以上这么多的步骤,我们终于是看到了浏览器上显示的 thinkphp欢迎页面。

网站分享

官网:

http://www.thinkphp.cn/

API:

http://doc.thinkphp.cn/

论坛:

http://www.ithinkphp.com/

时间: 2024-12-21 16:27:22

ThinkPHP学习手记——环境搭建的相关文章

【golang学习】环境搭建

近期项目的需要开始了学习golang的旅程,在此将学习的过程做以记录,方便查看,也希望帮助到大家. 由于我使用的是64位linux环境(redhat 5.2),所以这里就介绍64位的安装方式,其他类似: 1. 下载安装包 自从2014年5月谷歌在国内被封杀之后,我们下载go安装包也得翻墙了,但是为了方便我上传了一个64位linux的包在(地址),你可以直接下载使用. 2.安装 下载完上传到你的linux系统中,比如/opt/go1.1.1.linux-amd64.tar.gz,这是就开始安装了,

Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma

1.下载angularjs 进入其官网下载:https://angularjs.org/?,建议下载最新版的:https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.7/angular.js 所有版本:https://code.angularjs.org/ 2.示例1 HelloWorld ! 新建一个helloworld.html <!doctype html> <html ng-app> <head> &

Android学习之环境搭建

Android学习之环境搭建 园里有很多关于Android开发的环境搭建的资料,本人是安卓开发初学者,这里记录一下个人搭建Android环境的总结. 1.准备Eclipse IDE for Java Developers 网上可以下载的版本还是比较多的,本人选择了eclipse-java-luna-SR2-win32. 网址:http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/lunasr2 Note:官网点

ThinkPHP第一课 环境搭建

第一课 环境搭建 1.说明: ThinkPHP是一个开源的国产PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布.早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库).RoR的ORM映射和ActiveRecord模式

CouchBase学习之环境搭建以及HelloWorld

一.引言 NoSQL(Not Only SQL),火了很久了,一直没空研究.最近手上一个项目对Cache有一定的要求,借此机会对NoSQL入门一下.支持NoSQL的数据库系统有很多,  比如Redis,MongoDB等.每种系统都有自己的优缺点,根据实际情况我们选用了CouchBase作为切入点学习.这里有几种数据库的比较:http://www.csdn.net/article/2013-04-15/2814886-nosql-benchmark CouchBase,是MemBase与couch

JavaWeb学习之环境搭建

1. HTML(Hyper Text Markup Language) , 超文本标记语言. HTML文件的后缀名一般是: .htm , .html 表单(form): 浏览器内核: WebKit , trident Javascript:alert(‘?’);  --->java脚本语言 我的第一个html程序: 代码如下: 1 <html> 2 <head> 3 <title> 龚细军的网站</title> 4 </head> 5 6

hbase_学习_01_HBase环境搭建(单机)

一.前言 本文承接上一篇:hadoop_学习_02_Hadoop环境搭建(单机)  ,主要是搭建HBase的单机环境 二.环境准备 在虚拟机中: 操作系统 : linux CentOS 6.8 jdk:1.7 hadoop:2.8.3 hbase:1.4.2 三.hbase下载 1.hbase下载地址 http://mirror.bit.edu.cn/apache/hbase/1.4.2/hbase-1.4.2-bin.tar.gz 2.下载hbase wget http://mirror.bi

深度学习开发环境搭建

深度学习开发环境搭建 https://www.cnblogs.com/ai-developer/p/10022115.html 工欲善其事,必先利其器.首先我们需要花费一些时间来搭建开发环境. 1.安装python.python是人工智能开发首选语言. 2.安装virtualenv.virtualenv可以为一个python应用创建一套隔离的运行环境,避免不同版本的python或第三方库互相影响.类似的虚拟环境还有anaconda,anaconda自带常用库,因此安装包有几百兆,与anacond

JAVA基础学习——1.环境搭建 (系统Win10,64bit)

大学里虽然老师教过JAVA,但我没学.后来工作了,断断续续的也碰到了JAVA的项目,都是拉过来就干的节奏.也没有好好系统的学习一下. 从今天开始系统学习整理一下JAVA,以后再碰到JAVA项目的时候,心里也踏实点.咱也是正儿八经学过的人了,发发博客就当做个笔记,有不足的地方,大家多多指点,先在这里谢谢大家. 1.  环境搭建第一步,安装JDK. JDK 是Java开发工具包 (Java Development Kit ) 的缩写. JDK 是一系列工具的集合,这些工具是编译Java源码.运行Ja