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 相关文章推荐
Php做的端口嗅探器--可以指定网站和端口
Oct 09 PHP
php5数字型字符串加解密代码
Apr 24 PHP
解析PHP自带的进位制之间的转换函数
Jun 08 PHP
php面象对象数据库操作类实例
Dec 02 PHP
ThinkPHP打开验证码页面显示乱码的解决方法
Dec 18 PHP
PHP结合jQuery.autocomplete插件实现输入自动完成提示的功能
Apr 27 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
Apr 15 PHP
JavaScript实现删除电脑的关机键
Jul 26 PHP
php实现的mysqldb读写分离操作类示例
Feb 07 PHP
Yii框架ACF(accessController)简单权限控制操作示例
Apr 26 PHP
php常用字符串查找函数strstr()与strpos()实例分析
Jun 21 PHP
php与阿里云短信接口接入操作案例分析
May 27 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注释实例技巧
2008/10/03 PHP
PHP递归返回值时出现的问题解决办法
2013/02/19 PHP
php如何连接sql server
2015/10/16 PHP
PHP中模拟链表和链表的基本操作示例
2016/02/27 PHP
Laravel使用原生sql语句并调用的方法
2019/10/09 PHP
Prototype Template对象 学习
2009/07/19 Javascript
javascript OFFICE控件测试代码
2009/12/08 Javascript
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
2016/11/01 Javascript
jQuery中的select操作详解
2016/11/29 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
JS实现的3des+base64加密解密算法完整示例
2018/05/18 Javascript
解决ng-repeat产生的ng-model中取不到值的问题
2018/10/02 Javascript
[03:49]显微镜下的DOTA2第十五期—VG登基之路完美团
2014/06/24 DOTA
[48:29]2018DOTA2亚洲邀请赛3月30日 小组赛A组 LGD VS KG
2018/03/31 DOTA
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
2014/11/18 Python
Python处理中文标点符号大集合
2018/05/14 Python
深入浅析Python2.x和3.x版本的主要区别
2018/11/30 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
Pycharm 文件更改目录后,执行路径未更新的解决方法
2019/07/19 Python
用Python实现校园通知更新提醒功能
2019/11/23 Python
pandas分组聚合详解
2020/04/10 Python
Python实现捕获异常发生的文件和具体行数
2020/04/25 Python
土木工程专业自荐信
2013/10/04 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
运动会加油稿100字
2014/09/19 职场文书
父亲去世追悼词
2015/06/23 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
redis实现的四种常见限流策略
2021/06/18 Redis
Go归并排序算法的实现方法
2022/04/06 Golang