ThinkPHP 3.2 版本升级了哪些内容

ThinkPHP 3.2 版本升级了哪些内容,第1张

ThinkPHP 更新了很多从3.1-3.2这之间的我都给你看看!!缺李!

[新增] 增加index连贯 *** 作方法,用于数据集的强制索引 *** 作

[新增] Model类增加using连贯 *** 作用于多表 *** 作

[新增] 增加strict连贯 *** 作,用于设置数据写入和查询是否严格检查是否存在字段 默认情况下 不合法数据字段自动删除,如果设置了严格检查则会抛出异常。 例如: $model->strict(true)->add($data)

[新增] 增加fetchSql连贯 *** 作

[新增] 添加yaml_parse_file()函数,解析yaml文件返回一个数组

[新增] 增加memcache Session驱动

[新增] 增加聚合模型,方便一对一的关联数据表 *** 作

[新增] 新增TMPL_PATH常量支持 可以全局改版模板目录到模块目录之外

[新增] 增加Lite模式Db类,仅支持原生SQL *** 作

[新增] 数据库调试增加单独的配置参数 DB_DEBUG(如未设置依然伏并迟取调试模式常量 APP_DEBUG)

[新增] 新增框架核心葡萄牙语言包

[新增] 增加COOKIE_SECURE和COOKIE_HTTPONLY配置参数

[新增] MySQL驱动增加ON DUPLICATE KEY UPDATE功能

[改进] Db类和数据库驱动类完全基于PDO重写

[改进] 添加全局过滤机制(默认关闭)

[改进] I函数增加修饰符功能和正则检测支持

[改进] 采用主从分布式数据库时,从数据库连接失败自动连接主服务器

[改进] 增加Model类对复合主键的支持

[改进] 改进Mongo模型和驱动类,使用更加方便

[改进] 改进session函数删除 *** 作支持数组

[改进] 改进session函数对多维赋值的支持

[改进] 改进数据库字段缓存的文件标识 加上数据表前缀,避免不同前缀的表产生混淆

[改进] 针对数据库视图无主键的问题,使用默认id作为主键,与未开启DB_FIELDS_CACHE时行为一致

[改进] SAE模式惯例配置增加上传驱动设置

[改进] 改进参数绑定机制

[改进] 确保使用参数绑定后日志中生成sql语句的准确性

[改进] 模型类的setInc和setDec方法支持延迟写入,同时取消高级模型的相关方法

[改进] 日志写入的时候自动创建目录

[改进] 改进SQL缓存

[改进] 优化缓存队列功能

[改进] 路由的请求类型定义不区分大小写

[改进] 数据库驱动增加通用insertAll方法支持

[改进] 完善 url的验证正则

[改进] 单字母函数返回值类型修正以及一些拼写错误修正

[改进] 自动创建模型模块的父目录 直接调用\Think\Build::buildController和buildModel的情况下创建目录

[改进] 日志驱动增加自动目录创建支持

[改进] 自动生成的目录结构增加模块的缓存目录

[改进] mysql存储过程支持完善

[改进] Db类改进对多表更新和删除的支持,多表删除支持USING和JOIN *** 作

[改进] 改进parseLock的位置

[改进] Db类的update和delete方法增加多表 *** 作的支持

[改进] 改进CURD *** 作 可以直接返回sql语句而不真正执行。

[改进] 插件控制器的命名蔽悔空间可定义 不再局限于模块下面 增加 ADDON_PATH 用于定义插件目录 默认位于 应用目录下面的Addon

[改进] 改进静态缓存读取的有效判断对sae的支持

[改进] 日志目录分模块

[改进] 模型类的getField方法改进 支持在字段名中使用函数

[改进] 改进Db类的parseWhere方法

[改进] 改进模型的page和limit方法 改进分页类

[改进] 改进配置文件自动生成

[改进] 完善ShowPageTraceBehavior一处函数调用大小写规范

[改进] U函数支持多级控制器

[改进] send_http_status函数增加状态

[改进] 允许在项目中定义 APP 常量

[改进] 改进定义TMPL_PATH后的模板路径定义

[改进] Image类的imagick驱动save方法增加quality参数 用于图片质量设置,默认值为80

[改进] 改进Image类的JPEG图片生成质量

[改进] Gd库驱动类改进

[改进] 改进T函数对TMPL_PATH常量定义的支持

[改进] 改进I函数对path.0的支持

[改进] 改进关联模型

[改进] 改进dispatch_jump模板

[改进] 更新api模式支持配置文件的后缀定义

[改进] 改进Model类的getModelName方法对多层模型的支持

[改进] 改进cookie函数对secure和httponly的支持

[改进] 改进模板标签对命名空间的支持,写法 {$var|Org\Util\String::rand}

[改进] 改进数据表自动识别规则正则规则 可以正确识别带有数字的数据表

[改进] Model类的cache方法使用改进 cache(10) 等同于 cache(true, 10)

[修正] 修正ShowRuntime行为扩展

[修正] 修正Model类的add和addall方法中的_facade和_parseOptions的调用顺序问题

[修正] 修正使用数组方式动态指定表名后的BUG

[修正] 修正ChromShowPage行为扩展

[修正] 修正自定义公共模块路径时,加载公共模块类库失败

[修正] 修正参数绑定的一处判断

[修正] 解决PDO参数绑定后的获取最终SQL语句问题

[修正] 修正开启布局后show方法的问题

[修正] 解决调用trace()无法返回trace日志问题

[修正] 修复mongo出现错误输出的问题

[修正] 修正页面Trace的日志保存

[修正] 修正Model类的save方法

[修正] 修正令牌验证没有设置TOKEN_NAME的问题

[修正] 修复RestController中请求资源类型总是为html的bug

[修正] 修正Model类的getField方法的一处变量冲突问题

[修正] 修正Mongo驱动的page处理

[修正] 修正 extract方法 在分解变量的时候 可能导致变量被覆盖的问题

[修正] 修正Imagick类库

[修正] 修正页面trace插件开启PAGE_TRACE_SAVE后出错的问题

[修正] 修正controller方法 对不使用命名空间的支持

[修正] 修正Image类的save方法支持图片质量

[修正] 修正高级模型的乐观锁功能

[修正] 修正I函数通过FILTER_VALIDATE_EMAIL方式传入常量过滤的一处错误 并且过滤参数支持数组

[修正] 修正GIF类的架构函数

[修正] Cache类一处常量错误修正

[修正] 修改自动生成的配置文件支持CONF_EXT定义

[删除] 去掉多余的URL_404_REDIRECT配置参数

3.2.2 更新日志

[增加]配置文件增加yaml/json/xml/ini/自定义格式支持

[增加]增加load_config函数用于加载配置文件

[增加]增加CONF_EXT和CONF_PARSE常量,用于定义配置文件后缀及解析方法

[增加]模块增加状态配置文件

[增加]cookie函数增加httponly参数支持

[增加]增加COOKIE_HTTPONLY配置参数

[增加]增加插件的控制器访问支持

[增加]增加CONTROLLER_PATH常量用于定义控制器的命名空间路径

[增加]添加VAR_ADDON配置参数 用于设置默认的插件控制器命名空间变量

[增加]dispatcher类增加getSpace方法用于获取控制器的命名空间路径

[增加]I函数增加path和data类型变量的用法

[增加]引入composer支持(还需要完善)

[增加]xcahe和wincache驱动增加clear方法

[增加]自动生成机制支持多个模块的控制器和模型类的批量生成

[修正]修正上传类不能动态改变rootPath的BUG

[修正]修正RestController类的执行顺序

[修正]修正Model类的参数绑定的一处BUG

[修正]修正CronRun行为扩展一处错误

[修正]修正GIF类

[修正]修正rest控制器的encodeData方法

[修正]修正ViewModel可能因空格导致Order方法错误的bug

[修正]修正MongoModel类的写入数据的自增获取

[修正]修正第三方模板引擎驱动类

[修正]修正自动加载可能的一处导致重复加载的问题

[修正]修正__CONTROLLER__ 在URL不区分大小写情况下的获取

[修正]修正Route类中请求类型判断错误的bug

[修正]修正mysqli驱动的free方法

[改进]改进CronRun行为扩展

[改进]TOKEN_NAME 未设置时使用默认值__hash__

[改进]模类的_after_insert回调返回false后直接返回

[改进]Model类的save方法 如果data为空则不执行

[改进]Model类的delete方法 如果条件为空 则不执行删除 *** 作

[改进]改进获取模块方法,支持驼峰法模块命名

[改进]改进模型的查询方法对表前缀的支持,使用当前模型设置的表前缀

[改进]视图模型的视图定义中的_table属性和关联模型中的relation_table 支持 __TABLE_NAME__定义方式

[改进]Model类的query和execute方法支持 __TABLE_NAME__定义方式

[改进]改进PDO驱动对pgsql字符转义的

核心版本去除了第三方扩展和驱动,仅保留核耐或心类库和SAE模式支持。

ThinkPHP3.2.3版本是一个优化和修正版本,比3.2.2更加稳定、高效和安全,是一个推荐升级汪橘的版本,主要更新如下:

[ 数据库方面 ]

数据库驱动完全用PDO重写;

支持通用insertAll方法;

改进参数绑定机制;

主从分布式数据库连接改进;

对Mongo的支持更加完善昌陵伍;

[ 模型方面 ]

模型类的诸多增强和改进;

增加聚合模型扩展;

支持复合主键;

多表 *** 作的支持完善;

模型的CURD *** 作支持仅获取SQL语句而不执行;

增加using/index/fetchSql/strict/token连贯 *** 作方法;

模型类的setInc和setDec方法支持延迟写入;

[ 安全方面 ]

I函数增加变量修饰符和正则检测支持;

支持全局变量过滤和Action参数绑定的变量过滤;

修正可能的SQL注入漏洞;

[ 其它方面 ]

支持全局路由定义;

增加插件控制器支持;

增加对全局和模块的模板路径的灵活设置;

日志目录分模块存放;

增加memcache Session驱动;

改进session函数的数组 *** 作;

修正一系列存在的问题;

ThinkPHP3.2.3

获取ThinkPHP的方式很多,官方网站是最好的下载和文档获取来源。

官网提供了稳定版本的下载:http://thinkphp.cn/down/framework.html

官网下载版本提供了完整版和核心版两个版本,核心版本只保留了核心类库和必须的文件,去掉了所有的扩展类库和驱动,支持标准模式和SAE模式。

如果你希望保持最新的更新,可以通过github获取当前最新的版本(完整版)。

Git获取地址列表(你可以选择一个最快的地址):

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

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

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

Coding: https://coding.net/u/liu21st/p/thinkphp/git

3.2版本也支持composer安装,确保你的电脑已经安装了composer,然后在你的web根目录下面执行

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

(注意:目前国内的速度很慢 建议直接下载官网版本)

ThinkPHP无需任何安装,直接拷贝到你的电脑或败春者服务器的WEB运行目录下面即可。

参考文档:http://www.kancloud.cn/manual/thinkphp/1680

ThinkPHP5

ThinkPHP5的环境要求如下:

PHP >= 5.4.0

PDO PHP Extension

MBstring PHP Extension

CURL PHP Extension

严格来说,ThinkPHP无需安装过程,这里所说的安装其实就是把ThinkPHP框架放入WEB运行环境(前提是你的WEB运行环境已经OK),可以通过下面几种方式获取和安装ThinkPHP。

一、官网下载安装

获取ThinkPHP的方式很多,官方网站提供了稳定版本或者带扩展完整版本的下载。

官网的下载版本不一定是最新版本,GIT版本获取的才是保持更新的版本。

二、Composer安装

ThinkPHP5支持使用Composer安装,如果还没有安装 Composer,你可以按 Composer安装 中的方法安装。在 Linux 和 Mac OS X 中可以运行如下命令:

curl -sS 

| php

mv composer.phar /usr/local/bin/composer

在 Windows 中,你需要下载并运行 Composer-Setup.exe。

如果遇到任何问题或者想更深入地学习 Composer,请参考 Composer 文档(英文),Composer 中文。

如果你已经安装有 Composer 请确保使用的是最察帆耐新版本,你可以用 composer self-update 命令更新 Composer 为最新版本。

然后在命令行下面,切换到你的web根目录下面并执行下面的命令:

composer create-project topthink/think tp5  --prefer-dist

如果出现错误提示,请根据提示 *** 作或者参考Composer中文文档。

如果国内访问composer的速度比较慢,可以参考这里的说明使用国内镜像

三、Git安装

如果你不太了解Composer或者觉得Composer太慢,也可以使用git版本库安装和更新,ThinkPHP5.0拆分为多个仓库,主要包括:

应用项目:https://github.com/top-think/think

核心框架:https://github.com/top-think/framework

之所以设计为应用和核心仓库分离,是为了支持Composer单独更新核心框架。

首轿仔先克隆下载应用项目仓库

git clone https://github.com/top-think/think tp5

然后切换到tp5目录下面,再克隆核心框架仓库:

git clone https://github.com/top-think/framework thinkphp

两个仓库克隆完成后,就完成了ThinkPHP5.0的Git方式下载,如果需要更新核心框架的时候,只需要切换到thinkphp核心目录下面,然后执行:

git pull https://github.com/top-think/framework

如果不熟悉git命令行,可以使用任何一个GIT客户端进行 *** 作,在此不再详细说明。

无论你采用什么方式获取的ThinkPHP框架,现在只需要做最后一步来验证是否正常运行。

在浏览器中输入地址:

http://localhost/tp5/public/

参考文档:http://www.kancloud.cn/manual/thinkphp5/118006


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12526125.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存