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实现域名whois查询的代码(数据源万网、新网)
Feb 22 PHP
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
Jun 04 PHP
解析ajax事件的调用顺序
Jun 17 PHP
Codeigniter校验ip地址的方法
Mar 21 PHP
PHP扩展程序实现守护进程
Apr 16 PHP
php示例详解Constructor Prototype Pattern 原型模式
Oct 15 PHP
WordPress中用于获取文章作者与分类信息的方法整理
Dec 17 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
Jun 10 PHP
实现PHP中session存储及删除变量
Oct 15 PHP
PHP实现微信公众号验证Token的示例代码
Dec 16 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
Apr 13 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 daddslashes()和 saddslashes()有哪些区别分析
2012/10/26 PHP
php微信公众号开发(4)php实现自定义关键字回复
2016/12/15 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
给moz-firefox下添加IE方法和属性
2007/04/10 Javascript
获取中文字符串的实际长度代码
2014/06/05 Javascript
终于实现了!精彩的jquery弹幕效果
2016/07/18 Javascript
关于JavaScript限制字数的输入框的那些事
2016/08/14 Javascript
关于Iframe父页面与子页面之间的相互调用
2016/11/22 Javascript
d3.js入门教程之数据绑定详解
2017/04/28 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
bootstrap时间插件daterangepicker使用详解
2017/10/19 Javascript
Parcel 打包示例(React HelloWorld)
2018/01/16 Javascript
简单的vuex 的使用案例笔记
2018/04/13 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
JS正则表达式常见用法实例详解
2018/06/19 Javascript
Vue.set()动态的新增与修改数据,触发视图更新的方法
2018/09/15 Javascript
python动态监控日志内容的示例
2014/02/16 Python
Python使用Scrapy爬取妹子图
2015/05/28 Python
python爬虫面试宝典(常见问题)
2018/03/02 Python
Python实现聊天机器人的示例代码
2018/07/09 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
2019/06/17 Python
Python如何使用Gitlab API实现批量的合并分支
2019/11/27 Python
PyCharm 专业版安装图文教程
2020/02/20 Python
Python生成器generator原理及用法解析
2020/07/20 Python
解决tensorflow模型压缩的问题_踩坑无数,总算搞定
2021/03/02 Python
html5-websocket基于远程方法调用的数据交互实现
2012/12/04 HTML / CSS
模具专业毕业推荐信
2014/03/08 职场文书
投资意向书
2014/07/30 职场文书
业务员辞职信范文
2015/03/02 职场文书
数学教师求职信范文
2015/03/20 职场文书
《雷雨》教学反思
2016/02/20 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
react合成事件与原生事件的相关理解
2021/05/13 Javascript
把77A收信机改造成收音机
2022/04/05 无线电