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
《PHP边学边教》(02.Apache+PHP环境配置――上篇)
Dec 13 PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 PHP
基于PHP选项与信息函数的使用详解
May 10 PHP
PHP之生成GIF动画的实现方法
Jun 07 PHP
PHP文件锁定写入实例解析
Jul 14 PHP
php实现parent调用父类的构造方法与被覆写的方法
Feb 11 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
Apr 20 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
根据key删除数组中指定的元素实现方法
Mar 02 PHP
PHP简单获取随机数的常用方法小结
Jun 07 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
Apr 17 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 PDO中文乱码解决办法
2009/07/20 PHP
php中hashtable实现示例分享
2014/02/13 PHP
thinkphp验证码显示不出来的解决方法
2014/03/29 PHP
php发送短信验证码完成注册功能
2015/11/24 PHP
基于PHP实现简单的随机抽奖小程序
2016/01/05 PHP
laravel自定义分页的实现案例offset()和limit()
2019/10/15 PHP
IE8下关于querySelectorAll()的问题
2010/05/13 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
js如何判断用户是在PC端和还是移动端访问
2014/04/24 Javascript
Kendo Grid editing 自定义验证报错提示的解决方法
2016/11/18 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
js的新生代垃圾回收知识点总结
2019/08/22 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
Vue props中Object和Array设置默认值操作
2020/07/30 Javascript
原生JS实现弹幕效果的简单操作指南
2020/11/10 Javascript
Vue如何循环提取对象数组中的值
2020/11/18 Vue.js
JS实现京东商品分类侧边栏
2020/12/11 Javascript
vue实现按钮切换图片
2021/01/20 Vue.js
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
[32:47]完美世界DOTA2联赛 GXR vs IO 第二场 11.07
2020/11/09 DOTA
使用python搭建Django应用程序步骤及版本冲突问题解决
2013/11/19 Python
编写Python脚本使得web页面上的代码高亮显示
2015/04/24 Python
python3.6的venv模块使用详解
2018/08/01 Python
Python UnboundLocalError和NameError错误根源案例解析
2018/10/31 Python
python交易记录链的实现过程详解
2019/07/03 Python
python线程中的同步问题及解决方法
2019/08/29 Python
Tensorflow进行多维矩阵的拆分与拼接实例
2020/02/07 Python
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
美国家喻户晓的保健品品牌:Vitamin World(维他命世界)
2016/08/19 全球购物
高中生的学习总结自我鉴定
2013/10/26 职场文书
自荐信封面
2013/12/04 职场文书
城建学院毕业生自荐信
2014/01/31 职场文书
安全标准化实施方案
2014/02/20 职场文书
MySql学习笔记之事务隔离级别详解
2021/05/12 MySQL
鲲鹏 CentOS 7 安装Python3.7
2022/05/11 Servers