ThinkPHP安装和设置


Posted in PHP onJuly 27, 2015

前提:此教程适用于ThinkPHP 3.2+

今天起的以后几天,将放出ThinkPHP的系列教程,一共七篇,需要的同学可以自行点赞收藏。

1.安装

安装ThinkPHP的方法很多,你可以直接到ThinkPHP的官网去下载,下载完之后直接解压就可以了;或者你也可以到ThinkPHP官方维护的Git地址下载

JB51: https://3water.com/codes/10795.html

Github: https://github.com/liu21st/thinkphp

Oschina: http://git.oschina.net/liu21st/thinkphp.git

Code: https://code.csdn.net/topthink2011/ThinkPHP

当然,作为一个流行的PHP框架,你也可以直接用composer来安装:

composer create-project topthink/thinkphp your-project-name

2. 设置

上面的安装看看就可以,因为实验楼已经安装好ThinkPHP了。所以我们现在开始学习ThinkPHP第一步:设置ThinkPHP。一个框架的原始模样可能无法满足你的开发需求,但你可以通过设置来满足。在学习ThinkPHP的配置的时候,首先要明白:ThinkPHP框架中所有配置文件的定义格式都是采用返回PHP数组的方式来定义的

<?php

return array(
  'URL_ROUTER_ON'  => true,
  'URL_ROUTE_RULES'=>array(

  'blogs/:id'        => array('Index/read'),
  'article/:id'        => array('Article/show')
),
  'URL_MAP_RULES'=>array(
  'new/top' => 'Index/top?type=top'
),

  'DB_TYPE'        => 'mysql',
  'DB_HOST'        => 'localhost',
  'DB_NAME'        => 'thinkdatabase',
  'DB_USER'        => 'root',
  'DB_PWD'        => 'password',
  'DB_PORT'        => '3306',
  'DB_PREFIX'       => 'think_',

);

说明:ThinkPHP的配置参数(一级参数)是不区分大小写的,因为不管大写小写,最后都会转为小写。但是为了在编程的过程中更符合规范,建议统一使用大写来设置配置参数。上面的第一个配置URL_ROUTER_ON,我们开启了路由重写功能,为后面的URL_ROUTE_RULES奠定基础(详细的后面我们会在路由章节说到)。最后几个带DB_的设置项是表示设置连接数据库的参数,几乎每一个web应用都会用到数据库,这些设置为我们后续进一步学习的基础。

<?php

 return array(
  'USER_CONFIG'    => array(
    'USER_AUTH' => true,
    'USER_TYPE' => 2,
  ),
);

如上面的USER_CONFIG下的USER_AUTH和USER_TYPE是区分大小写的。

了解了ThinkPHP的配置格式后,我们再看看ThinkPHP的配置加载顺序,理解配置项的加载顺序在开发的时候很重要,因为在同名的配置下,后加载的配置会覆盖前面加载的顺序,而生效的只有后加载的顺序。

惯例配置->应用配置->模式配置->调试配置->状态配置->模块配置->扩展配置->动态配置

上面的顺序就是ThinkPHP的配置加载顺序,而在一般情况下,这些配置都是自动加载的。我们最常操作的是应用配置,默认的就是在Application/Common/Conf/config.php文件中。在开发的时候我们可以在这里设置自己的配置,如果你不熟悉你可以配置什么值,你可以打开ThinkPHP/Conf/convention.php文件来查看相对应的配置项

读取配置

在开发的过程中,我们有时候需要读取应用的配置值,在ThinkPHP中统一使用C('配置参数名')来读取配置。比如:

$model = C('URL_MODEL');

或者

$model = C('url_model');

这两个是等效的,都是可以读取到系统的URL访问模式的设置值,因为在ThinkPHP的配置项是不分大小写的。但是建议统一使用大写方式。

可以利用config首字母来记忆C()方法。

以上就是关于THINKPHP的安装与配置的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
PHPMyadmin 配置文件详解(配置)
Dec 03 PHP
php _autoload自动加载类与机制分析
Feb 10 PHP
PHP数组排序之sort、asort与ksort用法实例
Sep 08 PHP
Yii框架获取当前controlle和action对应id的方法
Dec 03 PHP
CodeIgniter使用smtp服务发送html邮件的方法
Jun 10 PHP
PHP合并discuz用户脚本的方法
Aug 04 PHP
PHP实现文件上传下载实例
Oct 18 PHP
PHP魔术方法之__call与__callStatic使用方法
Jul 23 PHP
PHP实现正则表达式分组捕获操作示例
Feb 03 PHP
php解压缩zip和rar压缩包文件的方法
Jul 10 PHP
PHP实现15位身份证号转18位的方法分析
Oct 16 PHP
php生成短网址/短链接原理和用法实例分析
May 29 PHP
教你在PHPStorm中配置Xdebug
Jul 27 #PHP
关于PHP开发的9条建议
Jul 27 #PHP
Laravel 中获取上一篇和下一篇数据
Jul 27 #PHP
php实现将Session写入数据库
Jul 26 #PHP
php检测文本的编码
Jul 26 #PHP
PHP中COOKIES使用示例
Jul 26 #PHP
PHP实现简单数字分页效果
Jul 26 #PHP
You might like
优化PHP代码的53条建议
2008/03/27 PHP
PHP5中GD库生成图形验证码(有汉字)
2013/07/28 PHP
php删除左端与右端空格的方法
2014/11/29 PHP
浅谈PHP接收POST数据方式
2015/06/05 PHP
PHP实现文件上传下载实例
2016/10/18 PHP
thinkPHP中session()方法用法详解
2016/12/08 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
JavaScript 中的replace方法说明
2007/04/13 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
纯css下拉菜单 无需js
2016/08/15 Javascript
JS实现图片手风琴效果
2020/04/17 Javascript
Bootstrap4如何定制自己的颜色和风格
2018/02/26 Javascript
React如何解决fetch跨域请求时session失效问题
2018/11/02 Javascript
Vue自定义属性实例分析
2019/02/23 Javascript
详解JQuery基础动画操作
2019/04/12 jQuery
vue实现菜单切换功能
2019/05/08 Javascript
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
使用Typescript开发微信小程序的步骤详解
2021/01/12 Javascript
[51:44]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第二场
2018/04/04 DOTA
python模拟登陆Tom邮箱示例分享
2014/01/13 Python
Python下的Mysql模块MySQLdb安装详解
2014/04/09 Python
Python实现爬虫爬取NBA数据功能示例
2018/05/28 Python
python绘制散点图并标记序号的方法
2018/12/11 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
HTML5中判断横屏竖屏的方法(移动端)
2016/08/04 HTML / CSS
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
英国最大的经认证的有机超市:Planet Organic
2018/02/02 全球购物
办理居住证介绍信
2014/01/15 职场文书
同事吵架检讨书
2014/02/05 职场文书
大学新生军训感言
2014/02/25 职场文书
法定代表人资格证明书
2014/09/11 职场文书
先进集体事迹材料范文
2014/12/25 职场文书
留学推荐信怎么写
2015/03/26 职场文书
2015中秋节晚会主持词
2015/07/01 职场文书
新农村建设指导员工作总结
2015/08/13 职场文书
详解Html5项目适配系统深色模式方案总结
2021/04/14 HTML / CSS