配置格式

配置

配置格式

2021-03-24 09:29:22 969阅读 660赞
ThinkPHP支持多种格式的配置格式,但最终都是解析为PHP数组的方式。PHP数组定义返回PHP数组的方式是默认的配置定义格式,例如://项目配置文件return [    // 默认模块
配置加载

配置

配置加载

2021-03-24 09:28:39 620阅读 975赞
在ThinkPHP中,一般来说应用的配置文件是自动加载的,加载的顺序是:惯例配置->应用配置->扩展配置->场景配置->模块配置->动态配置以上是配置文件的加载顺序,因为后面的配置会覆盖之前的同名配置(在没有生效的前提下
读取配置

配置

读取配置

2021-03-24 09:27:30 557阅读 933赞
读取配置参数设置完配置参数后,就可以使用get方法读取配置了,例如:echo Config::get('配置参数1');系统定义了一个助手函数config,以上可以简化为:echo config('配置参数
动态配置

配置

动态配置

2021-03-24 09:26:57 573阅读 541赞
设置配置参数使用set方法动态设置参数,例如:Config::set('配置参数','配置值');// 或者使用助手函数config('配置参数','配置值');也可以批量设置
独立配置

配置

独立配置

2021-03-24 09:26:22 562阅读 793赞
独立配置文件配置文件支持分离(也称为扩展配置),只需要在公共配置文件配置extra_config_list参数(V5.0版本已经废除该写法)。例如,不使用独立配置文件的话,数据库配置信息应该是在config.php中配置如下:/* 数据库设
配置作用域

配置

配置作用域

2021-03-24 09:25:51 706阅读 935赞
作用域配置参数支持作用域的概念,默认情况下,所有参数都在同一个系统默认作用域下面。如果你的配置参数需要用于不同的项目或者相互隔离,那么就可以使用作用域功能,作用域的作用好比是配置参数的命名空间一样。// 导入my_config.php中的配
环境变量配置

配置

环境变量配置

2021-03-24 09:24:58 584阅读 911赞
环境变量配置ThinkPHP5.0支持使用环境变量配置。在开发过程中,可以在应用根目录下面的.env来模拟环境变量配置,.env文件中的配置参数定义格式采用ini方式,例如:app_debug =  trueapp_tr
架构总览

架构

架构总览

2021-03-24 09:24:24 726阅读 900赞
ThinkPHP应用基于MVC(模型-视图-控制器)的方式来组织。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型(M)、视图(V)、控制器(C),它们各自处理自己的任务。5.0的URL访问
生命周期

架构

生命周期

2021-03-24 09:23:22 987阅读 831赞
本篇内容我们对ThinkPHP5.0的应用请求的生命周期做大致的介绍,以便于开发者了解整个执行流程。1、入口文件用户发起的请求都会经过应用的入口文件,通常是 public/index.php文件。当然,你也可以更改或者增加新的入口文件。通常
入口文件

架构

入口文件

2021-03-24 09:22:44 919阅读 619赞
ThinkPHP采用单一入口模式进行项目部署和访问,无论完成什么功能,一个应用都有一个统一(但不一定是唯一)的入口。应该说,所有应用都是从入口文件开始的,并且不同应用的入口文件是类似的。入口文件定义入口文件主要完成:定义框架路径、项目路径(可选)定义
URL访问

架构

URL访问

2021-03-24 09:22:15 869阅读 878赞
URL设计ThinkPHP5.0在没有启用路由的情况下典型的URL访问规则是:http://serverName/index.php(或者其它应用入口文件)/模块/控制器/操作/[参数名/参数值...]支持切换到命令行访问,如果切换到命令行模式下面的
模块设计

架构

模块设计

2021-03-24 09:20:54 792阅读 630赞
5.0版本对模块的功能做了灵活设计,默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配置更改)。目录结构标准的应用和模块目录结构如下:├─application    
命名空间

架构

命名空间

2021-03-24 09:19:45 708阅读 840赞
命名空间ThinkPHP1采用命名空间方式定义和自动加载类库文件,有效的解决了多模块和Composer类库之间的命名空间冲突问题,并且实现了更加高效的类库自动加载机制。如果不清楚命名空间的基本概念,可以参考PHP手册:PHP命名空间特别注意的是,如果
自动加载

架构

自动加载

2021-03-24 09:19:13 752阅读 975赞
概述ThinkPHP5.0真正实现了按需加载,所有类库采用自动加载机制,并且支持类库映射和composer类库的自动加载。自动加载的实现由think\Loader类库完成,自动加载规范符合PHP的PSR-4。自动加载由于新版ThinkPHP完全采用了
Traits引入

架构

Traits引入

2021-03-24 09:18:44 703阅读 593赞
ThinkPHP 5.0开始采用trait功能(PHP5.4+)来作为一种扩展机制,可以方便的实现一个类库的多继承问题。trait是一种为类似 PHP 的单继承语言而准备的代码复用机制。trait为了减少单继承语言的限制,使开发人员能够自由
API友好

架构

API友好

2021-03-24 09:18:05 746阅读 832赞
新版ThinkPHP针对API开发做了很多的优化,并且不依赖原来的API模式扩展。数据输出新版的控制器输出采用Response类统一处理,而不是直接在控制器中进行输出,通过设置default_return_type或者动态设置不同类型的Respons
模板定位

模板

模板定位

2021-03-24 09:16:09 638阅读 851赞
模板文件定义每个模块的模板文件是独立的,为了对模板文件更加有效的管理,ThinkPHP对模板文件进行目录划分,默认的模板文件定义规则是:视图目录/控制器名(小写)/操作名(小写)+模板后缀默认的视图目录是模块的view目录,框架的默认视图文件后缀是.
模板标签

模板

模板标签

2021-03-24 09:15:35 803阅读 807赞
模板文件可以包含普通标签和标签库标签,标签的定界符都可以重新配置。普通标签普通标签用于变量输出和模板注释,普通模板标签默认以{ 和 } 作为开始和结束标识,并且在开始标记紧跟标签的定义,如果之间有空格或者换行则被视为非模
变量输出

模板

变量输出

2021-03-24 09:15:06 631阅读 573赞
在模板中输出变量的方法很简单,例如,在控制器中我们给模板变量赋值:$view = new View();$view->name = 'thinkphp';return 
系统变量

模板

系统变量

2021-03-24 09:14:21 982阅读 980赞
系统变量输出普通的模板变量需要首先赋值后才能在模板中输出,但是系统变量则不需要,可以直接在模板中输出,系统变量的输出通常以**{$Think** 打头,例如:{$Think.server.script_name} // 输出$_S