From a1d3a2d2e354e76294929863bddc3b1802e23cdc Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 8 Mar 2017 15:28:46 +0800 Subject: [PATCH 01/58] =?UTF-8?q?5.1=E6=96=87=E4=BB=B6=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/cache.php | 25 ++++++ {application => config}/config.php | 130 ++------------------------- config/cookie.php | 30 +++++++ {application => config}/database.php | 0 config/log.php | 22 +++++ config/session.php | 26 ++++++ config/template.php | 33 +++++++ config/trace.php | 18 ++++ {application => route}/route.php | 16 ++-- 9 files changed, 170 insertions(+), 130 deletions(-) create mode 100644 config/cache.php rename {application => config}/config.php (48%) create mode 100644 config/cookie.php rename {application => config}/database.php (100%) create mode 100644 config/log.php create mode 100644 config/session.php create mode 100644 config/template.php create mode 100644 config/trace.php rename {application => route}/route.php (73%) diff --git a/config/cache.php b/config/cache.php new file mode 100644 index 0000000..bb28d46 --- /dev/null +++ b/config/cache.php @@ -0,0 +1,25 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 缓存设置 +// +---------------------------------------------------------------------- + +return [ + // 驱动方式 + 'type' => 'File', + // 缓存保存目录 + 'path' => '', + // 缓存前缀 + 'prefix' => '', + // 缓存有效期 0表示永久缓存 + 'expire' => 0, +]; diff --git a/application/config.php b/config/config.php similarity index 48% rename from application/config.php rename to config/config.php index 21c0531..3584a3a 100644 --- a/application/config.php +++ b/config/config.php @@ -9,10 +9,11 @@ // | Author: liu21st // +---------------------------------------------------------------------- +// +---------------------------------------------------------------------- +// | 应用设置 +// +---------------------------------------------------------------------- + return [ - // +---------------------------------------------------------------------- - // | 应用设置 - // +---------------------------------------------------------------------- // 应用命名空间 'app_namespace' => 'app', @@ -28,8 +29,6 @@ return [ 'auto_bind_module' => false, // 注册的根命名空间 'root_namespace' => [], - // 扩展函数文件 - 'extra_file_list' => [THINK_PATH . 'helper' . EXT], // 默认输出类型 'default_return_type' => 'html', // 默认AJAX 数据返回格式,可选json xml ... @@ -51,10 +50,6 @@ return [ // 控制器类后缀 'controller_suffix' => false, - // +---------------------------------------------------------------------- - // | 模块设置 - // +---------------------------------------------------------------------- - // 默认模块名 'default_module' => 'index', // 禁止访问模块 @@ -72,10 +67,6 @@ return [ // 自动搜索控制器 'controller_auto_search' => false, - // +---------------------------------------------------------------------- - // | URL设置 - // +---------------------------------------------------------------------- - // PATHINFO变量名 用于兼容模式 'var_pathinfo' => 's', // 兼容PATH_INFO获取 @@ -92,8 +83,6 @@ return [ 'url_route_on' => true, // 路由使用完整匹配 'route_complete_match' => false, - // 路由配置文件(支持配置多个) - 'route_config_file' => ['route'], // 是否强制使用路由 'url_route_must' => false, // 域名部署 @@ -115,41 +104,14 @@ return [ // 请求缓存有效期 'request_cache_expire' => null, - // +---------------------------------------------------------------------- - // | 模板设置 - // +---------------------------------------------------------------------- - - 'template' => [ - // 模板引擎类型 支持 php think 支持扩展 - 'type' => 'Think', - // 模板路径 - 'view_path' => '', - // 模板后缀 - 'view_suffix' => 'html', - // 模板文件名分隔符 - 'view_depr' => DS, - // 模板引擎普通标签开始标记 - 'tpl_begin' => '{', - // 模板引擎普通标签结束标记 - 'tpl_end' => '}', - // 标签库标签开始标记 - 'taglib_begin' => '{', - // 标签库标签结束标记 - 'taglib_end' => '}', - ], - // 视图输出字符串内容替换 'view_replace_str' => [], // 默认跳转页面对应的模板文件 - 'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', - 'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', - - // +---------------------------------------------------------------------- - // | 异常及错误设置 - // +---------------------------------------------------------------------- + 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', + 'dispatch_error_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', // 异常页面的模板文件 - 'exception_tmpl' => THINK_PATH . 'tpl' . DS . 'think_exception.tpl', + 'exception_tmpl' => Env::get('think_path') . 'tpl/think_exception.tpl', // 错误显示信息,非调试模式有效 'error_message' => '页面错误!请稍后再试~', @@ -158,82 +120,4 @@ return [ // 异常处理handle类 留空使用 \think\exception\Handle 'exception_handle' => '', - // +---------------------------------------------------------------------- - // | 日志设置 - // +---------------------------------------------------------------------- - - 'log' => [ - // 日志记录方式,内置 file socket 支持扩展 - 'type' => 'File', - // 日志保存目录 - 'path' => LOG_PATH, - // 日志记录级别 - 'level' => [], - ], - - // +---------------------------------------------------------------------- - // | Trace设置 开启 app_trace 后 有效 - // +---------------------------------------------------------------------- - 'trace' => [ - // 内置Html Console 支持扩展 - 'type' => 'Html', - ], - - // +---------------------------------------------------------------------- - // | 缓存设置 - // +---------------------------------------------------------------------- - - 'cache' => [ - // 驱动方式 - 'type' => 'File', - // 缓存保存目录 - 'path' => CACHE_PATH, - // 缓存前缀 - 'prefix' => '', - // 缓存有效期 0表示永久缓存 - 'expire' => 0, - ], - - // +---------------------------------------------------------------------- - // | 会话设置 - // +---------------------------------------------------------------------- - - 'session' => [ - 'id' => '', - // SESSION_ID的提交变量,解决flash上传跨域 - 'var_session_id' => '', - // SESSION 前缀 - 'prefix' => 'think', - // 驱动方式 支持redis memcache memcached - 'type' => '', - // 是否自动开启 SESSION - 'auto_start' => true, - ], - - // +---------------------------------------------------------------------- - // | Cookie设置 - // +---------------------------------------------------------------------- - 'cookie' => [ - // cookie 名称前缀 - 'prefix' => '', - // cookie 保存时间 - 'expire' => 0, - // cookie 保存路径 - 'path' => '/', - // cookie 有效域名 - 'domain' => '', - // cookie 启用安全传输 - 'secure' => false, - // httponly设置 - 'httponly' => '', - // 是否使用 setcookie - 'setcookie' => true, - ], - - //分页配置 - 'paginate' => [ - 'type' => 'bootstrap', - 'var_page' => 'page', - 'list_rows' => 15, - ], ]; diff --git a/config/cookie.php b/config/cookie.php new file mode 100644 index 0000000..123c354 --- /dev/null +++ b/config/cookie.php @@ -0,0 +1,30 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | Cookie设置 +// +---------------------------------------------------------------------- +return [ + // cookie 名称前缀 + 'prefix' => '', + // cookie 保存时间 + 'expire' => 0, + // cookie 保存路径 + 'path' => '/', + // cookie 有效域名 + 'domain' => '', + // cookie 启用安全传输 + 'secure' => false, + // httponly设置 + 'httponly' => '', + // 是否使用 setcookie + 'setcookie' => true, +]; diff --git a/application/database.php b/config/database.php similarity index 100% rename from application/database.php rename to config/database.php diff --git a/config/log.php b/config/log.php new file mode 100644 index 0000000..acfdb13 --- /dev/null +++ b/config/log.php @@ -0,0 +1,22 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 日志设置 +// +---------------------------------------------------------------------- +return [ + // 日志记录方式,内置 file socket 支持扩展 + 'type' => 'File', + // 日志保存目录 + 'path' => '', + // 日志记录级别 + 'level' => [], +]; diff --git a/config/session.php b/config/session.php new file mode 100644 index 0000000..521240e --- /dev/null +++ b/config/session.php @@ -0,0 +1,26 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 会话设置 +// +---------------------------------------------------------------------- + +return [ + 'id' => '', + // SESSION_ID的提交变量,解决flash上传跨域 + 'var_session_id' => '', + // SESSION 前缀 + 'prefix' => 'think', + // 驱动方式 支持redis memcache memcached + 'type' => '', + // 是否自动开启 SESSION + 'auto_start' => true, +]; diff --git a/config/template.php b/config/template.php new file mode 100644 index 0000000..1d630d7 --- /dev/null +++ b/config/template.php @@ -0,0 +1,33 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 模板设置 +// +---------------------------------------------------------------------- + +return [ + // 模板引擎类型 支持 php think 支持扩展 + 'type' => 'Think', + // 模板路径 + 'view_path' => '', + // 模板后缀 + 'view_suffix' => 'html', + // 模板文件名分隔符 + 'view_depr' => DIRECTORY_SEPARATOR, + // 模板引擎普通标签开始标记 + 'tpl_begin' => '{', + // 模板引擎普通标签结束标记 + 'tpl_end' => '}', + // 标签库标签开始标记 + 'taglib_begin' => '{', + // 标签库标签结束标记 + 'taglib_end' => '}', +]; diff --git a/config/trace.php b/config/trace.php new file mode 100644 index 0000000..73012f2 --- /dev/null +++ b/config/trace.php @@ -0,0 +1,18 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | Trace设置 开启 app_trace 后 有效 +// +---------------------------------------------------------------------- +return [ + // 内置Html Console 支持扩展 + 'type' => 'Html', +]; diff --git a/application/route.php b/route/route.php similarity index 73% rename from application/route.php rename to route/route.php index f648d3b..5e2427f 100644 --- a/application/route.php +++ b/route/route.php @@ -9,13 +9,15 @@ // | Author: liu21st // +---------------------------------------------------------------------- +Route::get('/', function () { + return 'hello,ThinkPHP5!'; +}); + +Route::group('hello', function () { + Route::get(':id', 'index/hello'); + Route::post(':name', 'index/hello'); +}, [], ['id' => '\d+', 'name' => '\w+']); + return [ - '__pattern__' => [ - 'name' => '\w+', - ], - '[hello]' => [ - ':id' => ['index/hello', ['method' => 'get'], ['id' => '\d+']], - ':name' => ['index/hello', ['method' => 'post']], - ], ]; -- Gitee From 24444c897ea9b78265ff811445a64264ec36bb34 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 8 Mar 2017 15:34:49 +0800 Subject: [PATCH 02/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/index/controller/Index.php | 5 +++++ config/{config.php => app.php} | 0 route/route.php | 7 ++----- 3 files changed, 7 insertions(+), 5 deletions(-) rename config/{config.php => app.php} (100%) diff --git a/application/index/controller/Index.php b/application/index/controller/Index.php index 2ab0697..7ed7811 100644 --- a/application/index/controller/Index.php +++ b/application/index/controller/Index.php @@ -7,4 +7,9 @@ class Index { return '

:)

ThinkPHP V5
十年磨一剑 - 为API开发设计的高性能框架

[ V5.0 版本由 七牛云 独家赞助发布 ]
'; } + + public function hello($name = 'ThinkPHP5') + { + return 'hello,' . $name; + } } diff --git a/config/config.php b/config/app.php similarity index 100% rename from config/config.php rename to config/app.php diff --git a/route/route.php b/route/route.php index 5e2427f..3fcb53d 100644 --- a/route/route.php +++ b/route/route.php @@ -9,14 +9,11 @@ // | Author: liu21st // +---------------------------------------------------------------------- -Route::get('/', function () { +Route::get('think', function () { return 'hello,ThinkPHP5!'; }); -Route::group('hello', function () { - Route::get(':id', 'index/hello'); - Route::post(':name', 'index/hello'); -}, [], ['id' => '\d+', 'name' => '\w+']); +Route::get('hello/:name', 'index/hello'); return [ -- Gitee From 900e5a4be254f7e2bbf03ccb70ab89898c5ca0c4 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 8 Mar 2017 15:54:43 +0800 Subject: [PATCH 03/58] =?UTF-8?q?readme=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 90 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 81cf109..a821e1e 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,20 @@ -ThinkPHP 5.0 +ThinkPHP 5.1Alpha =============== -[![Total Downloads](https://poser.pugx.org/topthink/think/downloads)](https://packagist.org/packages/topthink/think) -[![Latest Stable Version](https://poser.pugx.org/topthink/think/v/stable)](https://packagist.org/packages/topthink/think) -[![Latest Unstable Version](https://poser.pugx.org/topthink/think/v/unstable)](https://packagist.org/packages/topthink/think) -[![License](https://poser.pugx.org/topthink/think/license)](https://packagist.org/packages/topthink/think) - -ThinkPHP5在保持快速开发和大道至简的核心理念不变的同时,PHP版本要求提升到5.4,对已有的CBD模式做了更深的强化,优化核心,减少依赖,基于全新的架构思想和命名空间实现,是ThinkPHP突破原有框架思路的颠覆之作,其主要特性包括: - - + 基于命名空间和众多PHP新特性 - + 核心功能组件化 - + 强化路由功能 - + 更灵活的控制器 - + 重构的模型和数据库类 - + 配置文件可分离 - + 重写的自动验证和完成 - + 简化扩展机制 - + API支持完善 - + 改进的Log类 - + 命令行访问支持 - + REST支持 - + 引导文件支持 - + 方便的自动生成定义 - + 真正惰性加载 - + 分布式环境支持 - + 更多的社交类库 - -> ThinkPHP5的运行环境要求PHP5.4以上。 +ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特性包括: + + + 采用容器统一管理对象 + + 支持Facade + + 配置和路由目录独立 + + 取消系统常量 + + 助手函数增强 + + 类库别名机制 + + 增加条件查询 + + 配置采用二级 + + 依赖注入完善 + + +> ThinkPHP5的运行环境要求PHP5.6以上。 详细开发文档参考 [ThinkPHP5完全开发手册](http://www.kancloud.cn/manual/thinkphp5) @@ -39,19 +27,34 @@ www WEB部署目录(或者子目录) ├─application 应用目录 │ ├─common 公共模块目录(可以更改) │ ├─module_name 模块目录 -│ │ ├─config.php 模块配置文件 │ │ ├─common.php 模块函数文件 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ ├─view 视图目录 │ │ └─ ... 更多类库目录 │ │ -│ ├─command.php 命令行工具配置文件 +│ ├─command.php 命令行定义文件 │ ├─common.php 公共函数文件 -│ ├─config.php 公共配置文件 -│ ├─route.php 路由配置文件 -│ ├─tags.php 应用行为扩展定义文件 -│ └─database.php 数据库配置文件 +│ └─tags.php 应用行为扩展定义文件 +│ +├─config 应用配置目录 +│ ├─module_name 模块配置目录 +│ │ ├─database.php 数据库配置 +│ │ ├─cache 缓存配置 +│ │ └─ ... +│ │ +│ ├─app.php 应用配置 +│ ├─cache.php 缓存配置 +│ ├─cookie.php Cookie配置 +│ ├─database.php 数据库配置 +│ ├─log.php 日志配置 +│ ├─session.php Session配置 +│ ├─template.php 模板引擎配置 +│ └─trace.php Trace配置 +│ +├─route 路由定义目录 +│ ├─route.php 路由定义 +│ └─... 更多 │ ├─public WEB目录(对外访问目录) │ ├─index.php 入口文件 @@ -86,6 +89,27 @@ www WEB部署目录(或者子目录) > 切换到public目录后,启动命令:php -S localhost:8888 router.php > 上面的目录结构和名称是可以改变的,这取决于你的入口文件和配置参数。 +## 升级指导 + +原有下面系统类库的命名空间需要调整: + +think\App => think\facade\App (或者 App ) +think\Cache => think\facade\Cache (或者 Cache ) +think\Config => think\facade\Config (或者 Config ) +think\Cookie => think\facade\Cookie (或者 Cookie ) +think\Debug => think\facade\Debug (或者 Debug ) +think\Hook => think\facade\Hook (或者 Hook ) +think\Lang => think\facade\Lang (或者 Lang ) +think\Log => think\facade\Log (或者 Log ) +think\Request => think\facade\Request (或者 Request ) +think\Response => think\facade\Reponse (或者 Reponse ) +think\Route => think\facade\Route (或者 Route ) +think\Session => think\facade\Session (或者 Session ) +think\Url => think\facade\Url (或者 Url ) + +原有的配置文件config.php 拆分为app.php cache.php 等独立配置文件 放入config目录。 +原有的路由定义文件route.php 移动到route目录 + ## 命名规范 `ThinkPHP5`遵循PSR-2命名规范和PSR-4自动加载规范,并且注意如下规范: -- Gitee From 223f499b38f0dfd45b5cdf05f76ecd64a9306efb Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 8 Mar 2017 16:34:11 +0800 Subject: [PATCH 04/58] =?UTF-8?q?readme=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index a821e1e..9f24503 100644 --- a/README.md +++ b/README.md @@ -93,19 +93,19 @@ www WEB部署目录(或者子目录) 原有下面系统类库的命名空间需要调整: -think\App => think\facade\App (或者 App ) -think\Cache => think\facade\Cache (或者 Cache ) -think\Config => think\facade\Config (或者 Config ) -think\Cookie => think\facade\Cookie (或者 Cookie ) -think\Debug => think\facade\Debug (或者 Debug ) -think\Hook => think\facade\Hook (或者 Hook ) -think\Lang => think\facade\Lang (或者 Lang ) -think\Log => think\facade\Log (或者 Log ) -think\Request => think\facade\Request (或者 Request ) -think\Response => think\facade\Reponse (或者 Reponse ) -think\Route => think\facade\Route (或者 Route ) -think\Session => think\facade\Session (或者 Session ) -think\Url => think\facade\Url (或者 Url ) +* think\App => think\facade\App (或者 App ) +* think\Cache => think\facade\Cache (或者 Cache ) +* think\Config => think\facade\Config (或者 Config ) +* think\Cookie => think\facade\Cookie (或者 Cookie ) +* think\Debug => think\facade\Debug (或者 Debug ) +* think\Hook => think\facade\Hook (或者 Hook ) +* think\Lang => think\facade\Lang (或者 Lang ) +* think\Log => think\facade\Log (或者 Log ) +* think\Request => think\facade\Request (或者 Request ) +* think\Response => think\facade\Reponse (或者 Reponse ) +* think\Route => think\facade\Route (或者 Route ) +* think\Session => think\facade\Session (或者 Session ) +* think\Url => think\facade\Url (或者 Url ) 原有的配置文件config.php 拆分为app.php cache.php 等独立配置文件 放入config目录。 原有的路由定义文件route.php 移动到route目录 -- Gitee From d1a66a78d370acae256ead258e58b8c342f0ddae Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 9 Mar 2017 11:03:15 +0800 Subject: [PATCH 05/58] =?UTF-8?q?readme=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 - application/index/controller/Index.php | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 9f24503..4a0b6e0 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,6 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 > ThinkPHP5的运行环境要求PHP5.6以上。 -详细开发文档参考 [ThinkPHP5完全开发手册](http://www.kancloud.cn/manual/thinkphp5) ## 目录结构 diff --git a/application/index/controller/Index.php b/application/index/controller/Index.php index 7ed7811..b14158e 100644 --- a/application/index/controller/Index.php +++ b/application/index/controller/Index.php @@ -5,7 +5,7 @@ class Index { public function index() { - return '

:)

ThinkPHP V5
十年磨一剑 - 为API开发设计的高性能框架

[ V5.0 版本由 七牛云 独家赞助发布 ]
'; + return '

:)

ThinkPHP V5.1
十年磨一剑 - 为API开发设计的高性能框架

'; } public function hello($name = 'ThinkPHP5') -- Gitee From 6973a610ad4a221bab6a9b3f178cfe1eda9d980d Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 23 Apr 2017 19:51:11 +0800 Subject: [PATCH 06/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=94=B9=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/database.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/database.php b/config/database.php index 4caac2f..d12ebb0 100644 --- a/config/database.php +++ b/config/database.php @@ -50,4 +50,6 @@ return [ 'datetime_format' => 'Y-m-d H:i:s', // 是否需要进行SQL性能分析 'sql_explain' => false, + // Query类 + 'query' => '\\think\\db\\Query', ]; -- Gitee From 5ecddd8ce30e417bd2dd87f9c1ad711a94b9ae34 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 27 Apr 2017 19:13:40 +0800 Subject: [PATCH 07/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/config/app.php b/config/app.php index 3584a3a..7fefcec 100644 --- a/config/app.php +++ b/config/app.php @@ -15,8 +15,6 @@ return [ - // 应用命名空间 - 'app_namespace' => 'app', // 应用调试模式 'app_debug' => true, // 应用Trace -- Gitee From c8a5894f2dc90800a831fb2ffcfe84439b8a8b2b Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 14 Jul 2017 10:35:41 +0800 Subject: [PATCH 08/58] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index c4de66b..146221b 100644 --- a/composer.json +++ b/composer.json @@ -16,8 +16,8 @@ } ], "require": { - "php": ">=5.4.0", - "topthink/framework": "^5.0" + "php": ">=5.6.0", + "topthink/framework": "^5.1" }, "extra": { "think-path": "thinkphp" -- Gitee From bcbd7916068629843266748c5a72e727690659dc Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sat, 15 Jul 2017 10:20:17 +0800 Subject: [PATCH 09/58] =?UTF-8?q?=E4=BE=9D=E8=B5=96=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=BC=80=E5=8F=91=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 146221b..3508c10 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ ], "require": { "php": ">=5.6.0", - "topthink/framework": "^5.1" + "topthink/framework": "^5.1@dev" }, "extra": { "think-path": "thinkphp" -- Gitee From ed1f01106ad412065b893cfd927caa83372a9a35 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sat, 15 Jul 2017 10:41:57 +0800 Subject: [PATCH 10/58] =?UTF-8?q?=E8=B0=83=E6=95=B4composer.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 3508c10..ddb891d 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ ], "require": { "php": ">=5.6.0", - "topthink/framework": "^5.1@dev" + "topthink/framework": "~5.1.0@dev" }, "extra": { "think-path": "thinkphp" -- Gitee From fe93a836a6a4df4421598e4f7c74d155b5ac8fb3 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Tue, 18 Jul 2017 11:02:02 +0800 Subject: [PATCH 11/58] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E4=B8=8D=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/config/app.php b/config/app.php index 7fefcec..135f32f 100644 --- a/config/app.php +++ b/config/app.php @@ -77,8 +77,6 @@ return [ 'url_common_param' => false, // URL参数方式 0 按名称成对解析 1 按顺序解析 'url_param_type' => 0, - // 是否开启路由 - 'url_route_on' => true, // 路由使用完整匹配 'route_complete_match' => false, // 是否强制使用路由 -- Gitee From d94475cf8bdb54ba2fe280a69b553f5efecdcc9b Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sat, 29 Jul 2017 08:39:23 +0800 Subject: [PATCH 12/58] =?UTF-8?q?build=E6=96=87=E4=BB=B6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/build.php b/build.php index b37d3ab..d1d9e6a 100644 --- a/build.php +++ b/build.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2017 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- @@ -11,7 +11,7 @@ return [ // 生成应用公共文件 - '__file__' => ['common.php', 'config.php', 'database.php'], + '__file__' => ['common.php'], // 定义demo模块的自动生成 (按照实际定义的文件名生成) 'demo' => [ @@ -21,5 +21,6 @@ return [ 'model' => ['User', 'UserType'], 'view' => ['index/index'], ], + // 其他更多的模块定义 ]; -- Gitee From 861b31455d93b5a021697168b044f6ab5d7bc816 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 8 Sep 2017 14:42:57 +0800 Subject: [PATCH 13/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0readme=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4a0b6e0..da72eef 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -ThinkPHP 5.1Alpha +ThinkPHP 5.1RC1 =============== ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特性包括: @@ -10,6 +10,7 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 + 助手函数增强 + 类库别名机制 + 增加条件查询 + + 改进查询机制 + 配置采用二级 + 依赖注入完善 -- Gitee From 73561b72c5f665f57edca105ec3973a60d901421 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Tue, 19 Sep 2017 18:33:53 +0800 Subject: [PATCH 14/58] =?UTF-8?q?=E6=B7=BB=E5=8A=A0autoload?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/composer.json b/composer.json index ddb891d..7001f8a 100644 --- a/composer.json +++ b/composer.json @@ -19,6 +19,11 @@ "php": ">=5.6.0", "topthink/framework": "~5.1.0@dev" }, + "autoload": { + "psr-4": { + "app\\": "application" + } + }, "extra": { "think-path": "thinkphp" }, -- Gitee From 7abb2eeb76bbd9f0d7f1bdddb792941259d199c0 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 27 Sep 2017 11:17:46 +0800 Subject: [PATCH 15/58] =?UTF-8?q?=E4=B8=BA=E4=BA=86=E8=A7=84=E8=8C=83?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=8F=96=E6=B6=88APP=5FPATH=20=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E9=9C=80=E8=A6=81=E8=87=AA=E5=AE=9A=E4=B9=89=E5=BA=94?= =?UTF-8?q?=E7=94=A8=E7=9B=AE=E5=BD=95=20=E8=87=AA=E5=B7=B1=E9=87=8D?= =?UTF-8?q?=E5=86=99=E5=85=A5=E5=8F=A3=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/index.php | 2 -- think | 3 --- 2 files changed, 5 deletions(-) diff --git a/public/index.php b/public/index.php index 6b7ec30..92ecfc9 100644 --- a/public/index.php +++ b/public/index.php @@ -11,7 +11,5 @@ // [ 应用入口文件 ] -// 定义应用目录 -define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __DIR__ . '/../thinkphp/start.php'; diff --git a/think b/think index 8afa938..87eda5d 100644 --- a/think +++ b/think @@ -10,8 +10,5 @@ // | Author: yunwuxin <448901948@qq.com> // +---------------------------------------------------------------------- -// 定义项目路径 -define('APP_PATH', __DIR__ . '/application/'); - // 加载框架引导文件 require './thinkphp/console.php'; \ No newline at end of file -- Gitee From d9317ee834e02b297a805f515011257ffb4c9bf9 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 29 Sep 2017 11:07:33 +0800 Subject: [PATCH 16/58] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=BA=94=E7=94=A8?= =?UTF-8?q?=E5=92=8C=E5=91=BD=E4=BB=A4=E8=A1=8C=E5=85=A5=E5=8F=A3=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/index.php | 10 ++++++++-- think | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/public/index.php b/public/index.php index 92ecfc9..da22be5 100644 --- a/public/index.php +++ b/public/index.php @@ -10,6 +10,12 @@ // +---------------------------------------------------------------------- // [ 应用入口文件 ] +namespace think; -// 加载框架引导文件 -require __DIR__ . '/../thinkphp/start.php'; +// 加载基础文件 +require __DIR__ . '/../thinkphp/base.php'; + +// 支持事先使用静态方法设置Request对象和Config对象 + +// 执行应用并响应 +Container::get('app')->run()->send(); \ No newline at end of file diff --git a/think b/think index 87eda5d..05f35f8 100644 --- a/think +++ b/think @@ -10,5 +10,11 @@ // | Author: yunwuxin <448901948@qq.com> // +---------------------------------------------------------------------- -// 加载框架引导文件 -require './thinkphp/console.php'; \ No newline at end of file +namespace think; + +// 加载基础文件 +require __DIR__ . '/thinkphp/base.php'; + +// 执行应用 +Container::get('app', [__DIR__ . '/application/'])->initialize(); +Console::init(); \ No newline at end of file -- Gitee From 18f1cf51d5833b72db4ad52997cd0e5107e9b09b Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 23 Oct 2017 14:36:26 +0800 Subject: [PATCH 17/58] =?UTF-8?q?=E4=BF=AE=E6=AD=A3router?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/router.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/router.php b/public/router.php index 6ba1fab..80ada33 100644 --- a/public/router.php +++ b/public/router.php @@ -10,7 +10,7 @@ // +---------------------------------------------------------------------- // $Id$ -if (is_file($_SERVER["DOCUMENT_ROOT"] . $_SERVER["REQUEST_URI"])) { +if (is_file($_SERVER["DOCUMENT_ROOT"] . $_SERVER["SCRIPT_NAME"])) { return false; } else { require __DIR__ . "/index.php"; -- Gitee From 395da848f4694172c478fe4d0bc1a5a10626cffe Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 31 Dec 2017 23:17:01 +0800 Subject: [PATCH 18/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 ++++-- application/index/controller/Index.php | 2 +- application/tags.php | 2 +- build.php | 2 +- config/app.php | 6 +++--- config/cache.php | 2 +- config/cookie.php | 2 +- config/database.php | 2 +- config/log.php | 2 +- config/session.php | 2 +- config/template.php | 2 +- config/trace.php | 2 +- public/router.php | 2 +- route/route.php | 2 +- 14 files changed, 19 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index da72eef..acf2d0c 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,12 @@ -ThinkPHP 5.1RC1 +ThinkPHP 5.1 =============== ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特性包括: + 采用容器统一管理对象 + 支持Facade + + 注解路由支持 + + 路由跨域请求支持 + 配置和路由目录独立 + 取消系统常量 + 助手函数增强 @@ -144,7 +146,7 @@ ThinkPHP遵循Apache2开源协议发布,并提供免费使用。 本项目包含的第三方源码和二进制文件之版权信息另行标注。 -版权所有Copyright © 2006-2017 by ThinkPHP (http://thinkphp.cn) +版权所有Copyright © 2006-2018 by ThinkPHP (http://thinkphp.cn) All rights reserved。 diff --git a/application/index/controller/Index.php b/application/index/controller/Index.php index b14158e..b528a73 100644 --- a/application/index/controller/Index.php +++ b/application/index/controller/Index.php @@ -5,7 +5,7 @@ class Index { public function index() { - return '

:)

ThinkPHP V5.1
十年磨一剑 - 为API开发设计的高性能框架

'; + return '

:)

ThinkPHP V5.1
十年磨一剑 - 为API开发设计的高性能框架

'; } public function hello($name = 'ThinkPHP5') diff --git a/application/tags.php b/application/tags.php index e213e0a..4b18d10 100644 --- a/application/tags.php +++ b/application/tags.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/build.php b/build.php index d1d9e6a..34ba3c8 100644 --- a/build.php +++ b/build.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2017 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/app.php b/config/app.php index 135f32f..97c01d1 100644 --- a/config/app.php +++ b/config/app.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- @@ -81,6 +81,8 @@ return [ 'route_complete_match' => false, // 是否强制使用路由 'url_route_must' => false, + // 使用注解路由 + 'route_annotation' => false, // 域名部署 'url_domain_deploy' => false, // 域名根,如thinkphp.cn @@ -100,8 +102,6 @@ return [ // 请求缓存有效期 'request_cache_expire' => null, - // 视图输出字符串内容替换 - 'view_replace_str' => [], // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', 'dispatch_error_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', diff --git a/config/cache.php b/config/cache.php index bb28d46..985dbb1 100644 --- a/config/cache.php +++ b/config/cache.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/cookie.php b/config/cookie.php index 123c354..1de0708 100644 --- a/config/cookie.php +++ b/config/cookie.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/database.php b/config/database.php index d12ebb0..ecfcd03 100644 --- a/config/database.php +++ b/config/database.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/log.php b/config/log.php index acfdb13..54e81ba 100644 --- a/config/log.php +++ b/config/log.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/session.php b/config/session.php index 521240e..1d7b6c6 100644 --- a/config/session.php +++ b/config/session.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/template.php b/config/template.php index 1d630d7..0877562 100644 --- a/config/template.php +++ b/config/template.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/config/trace.php b/config/trace.php index 73012f2..425d301 100644 --- a/config/trace.php +++ b/config/trace.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/public/router.php b/public/router.php index 80ada33..4f916b4 100644 --- a/public/router.php +++ b/public/router.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- diff --git a/route/route.php b/route/route.php index 3fcb53d..6f479d3 100644 --- a/route/route.php +++ b/route/route.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- -- Gitee From 8f3de5a7b95c21dd70e12fdf9d2779f4fbd7094f Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 31 Dec 2017 23:48:09 +0800 Subject: [PATCH 19/58] =?UTF-8?q?2018=E6=96=B0=E5=B9=B4=E5=BF=AB=E4=B9=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/index/controller/Index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/index/controller/Index.php b/application/index/controller/Index.php index b528a73..2c4ed42 100644 --- a/application/index/controller/Index.php +++ b/application/index/controller/Index.php @@ -5,7 +5,7 @@ class Index { public function index() { - return '

:)

ThinkPHP V5.1
十年磨一剑 - 为API开发设计的高性能框架

'; + return '

:) 2018新年快乐

ThinkPHP V5.1
12载初心不改(2006-2018) - 你值得信赖的PHP框架

'; } public function hello($name = 'ThinkPHP5') -- Gitee From 4157806793db16a767ca1c22f234310479e573d5 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 1 Jan 2018 00:31:00 +0800 Subject: [PATCH 20/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7001f8a..361d6f6 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ ], "require": { "php": ">=5.6.0", - "topthink/framework": "~5.1.0@dev" + "topthink/framework": "5.1.*" }, "autoload": { "psr-4": { -- Gitee From 013e695dc383b6b82dd6df7e1251a65f91d17c1e Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 25 Jan 2018 17:57:38 +0800 Subject: [PATCH 21/58] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/index.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/index.php b/public/index.php index da22be5..22dc158 100644 --- a/public/index.php +++ b/public/index.php @@ -2,7 +2,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006-2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- @@ -18,4 +18,4 @@ require __DIR__ . '/../thinkphp/base.php'; // 支持事先使用静态方法设置Request对象和Config对象 // 执行应用并响应 -Container::get('app')->run()->send(); \ No newline at end of file +Container::get('app')->run()->send(); -- Gitee From c543914ca06a43d7e148e826f67702715c051900 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 25 Jan 2018 18:05:20 +0800 Subject: [PATCH 22/58] =?UTF-8?q?=E5=91=BD=E4=BB=A4=E8=A1=8C=E5=85=A5?= =?UTF-8?q?=E5=8F=A3=E6=96=87=E4=BB=B6=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- think | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/think b/think index 05f35f8..6a923b3 100644 --- a/think +++ b/think @@ -3,7 +3,7 @@ // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- -// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved. +// | Copyright (c) 2006-2018 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- @@ -15,6 +15,8 @@ namespace think; // 加载基础文件 require __DIR__ . '/thinkphp/base.php'; -// 执行应用 -Container::get('app', [__DIR__ . '/application/'])->initialize(); +// 应用初始化 +Container::get('app')->path(__DIR__ . '/application/')->initialize(); + +// 控制台初始化 Console::init(); \ No newline at end of file -- Gitee From 5c9c48929b044d700383a2726a0dba44203e3d07 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 25 Jan 2018 18:35:27 +0800 Subject: [PATCH 23/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/config/app.php b/config/app.php index 97c01d1..3d140a0 100644 --- a/config/app.php +++ b/config/app.php @@ -83,8 +83,6 @@ return [ 'url_route_must' => false, // 使用注解路由 'route_annotation' => false, - // 域名部署 - 'url_domain_deploy' => false, // 域名根,如thinkphp.cn 'url_domain_root' => '', // 是否自动转换URL中的控制器和操作名 -- Gitee From fd929d6a6b0410bd7b7e9f94b6329cbaf3e41954 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 25 Jan 2018 18:40:42 +0800 Subject: [PATCH 24/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/app.php b/config/app.php index 3d140a0..a0d12e3 100644 --- a/config/app.php +++ b/config/app.php @@ -99,6 +99,8 @@ return [ 'request_cache' => false, // 请求缓存有效期 'request_cache_expire' => null, + // 全局请求缓存排除规则 + 'request_cache_except' => [], // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', -- Gitee From 80a079f43b15614297aeeda18ca1d04febf21713 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 31 Jan 2018 22:38:20 +0800 Subject: [PATCH 25/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/config/app.php b/config/app.php index 97c01d1..36c8606 100644 --- a/config/app.php +++ b/config/app.php @@ -14,9 +14,12 @@ // +---------------------------------------------------------------------- return [ - + // 应用名称 + 'app_name' => '', + // 应用地址 + 'app_host' => '', // 应用调试模式 - 'app_debug' => true, + 'app_debug' => false, // 应用Trace 'app_trace' => false, // 应用模式状态 @@ -48,6 +51,10 @@ return [ // 控制器类后缀 'controller_suffix' => false, + // +---------------------------------------------------------------------- + // | 模块设置 + // +---------------------------------------------------------------------- + // 默认模块名 'default_module' => 'index', // 禁止访问模块 @@ -58,33 +65,43 @@ return [ 'default_action' => 'index', // 默认验证器 'default_validate' => '', + // 默认的空模块名 + 'empty_module' => '', // 默认的空控制器名 'empty_controller' => 'Error', + // 操作方法前缀 + 'use_action_prefix' => false, // 操作方法后缀 'action_suffix' => '', // 自动搜索控制器 'controller_auto_search' => false, + // +---------------------------------------------------------------------- + // | URL设置 + // +---------------------------------------------------------------------- + // PATHINFO变量名 用于兼容模式 'var_pathinfo' => 's', // 兼容PATH_INFO获取 'pathinfo_fetch' => ['ORIG_PATH_INFO', 'REDIRECT_PATH_INFO', 'REDIRECT_URL'], // pathinfo分隔符 'pathinfo_depr' => '/', + // HTTPS代理标识 + 'https_agent_name' => '', // URL伪静态后缀 'url_html_suffix' => 'html', // URL普通方式参数 用于自动生成 'url_common_param' => false, // URL参数方式 0 按名称成对解析 1 按顺序解析 'url_param_type' => 0, - // 路由使用完整匹配 - 'route_complete_match' => false, + // 是否开启路由延迟解析 + 'url_lazy_route' => false, // 是否强制使用路由 'url_route_must' => false, + // 路由是否完全匹配 + 'route_complete_match' => false, // 使用注解路由 'route_annotation' => false, - // 域名部署 - 'url_domain_deploy' => false, // 域名根,如thinkphp.cn 'url_domain_root' => '', // 是否自动转换URL中的控制器和操作名 @@ -101,6 +118,8 @@ return [ 'request_cache' => false, // 请求缓存有效期 'request_cache_expire' => null, + // 全局请求缓存排除规则 + 'request_cache_except' => [], // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', -- Gitee From 574299da62df60545df3d863627c08bbed65865f Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 5 Mar 2018 13:38:22 +0800 Subject: [PATCH 26/58] =?UTF-8?q?=E6=AC=A2=E8=BF=8E=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/index/controller/Index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/index/controller/Index.php b/application/index/controller/Index.php index 2c4ed42..a00d682 100644 --- a/application/index/controller/Index.php +++ b/application/index/controller/Index.php @@ -5,7 +5,7 @@ class Index { public function index() { - return '

:) 2018新年快乐

ThinkPHP V5.1
12载初心不改(2006-2018) - 你值得信赖的PHP框架

'; + return '

:)

ThinkPHP V5.1
12载初心不改(2006-2018) - 你值得信赖的PHP框架

'; } public function hello($name = 'ThinkPHP5') -- Gitee From 0e40e0b9aea9fefc4d7a7cacbd209ffdda7d9269 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 22 Mar 2018 16:30:18 +0800 Subject: [PATCH 27/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + config/app.php | 2 ++ config/database.php | 6 ++++++ config/log.php | 12 +++++++++--- 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index acf2d0c..dc1c993 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,7 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 + 改进查询机制 + 配置采用二级 + 依赖注入完善 + + 中间件支持(V5.1.6+) > ThinkPHP5的运行环境要求PHP5.6以上。 diff --git a/config/app.php b/config/app.php index 36c8606..2738e81 100644 --- a/config/app.php +++ b/config/app.php @@ -98,6 +98,8 @@ return [ 'url_lazy_route' => false, // 是否强制使用路由 'url_route_must' => false, + // 合并路由规则 + 'route_rule_merge' => false, // 路由是否完全匹配 'route_complete_match' => false, // 使用注解路由 diff --git a/config/database.php b/config/database.php index ecfcd03..a0196db 100644 --- a/config/database.php +++ b/config/database.php @@ -50,6 +50,12 @@ return [ 'datetime_format' => 'Y-m-d H:i:s', // 是否需要进行SQL性能分析 'sql_explain' => false, + // Builder类 + 'builder' => '', // Query类 'query' => '\\think\\db\\Query', + // 是否需要断线重连 + 'break_reconnect' => false, + // 断线标识字符串 + 'break_match_str' => [], ]; diff --git a/config/log.php b/config/log.php index 54e81ba..6305e75 100644 --- a/config/log.php +++ b/config/log.php @@ -14,9 +14,15 @@ // +---------------------------------------------------------------------- return [ // 日志记录方式,内置 file socket 支持扩展 - 'type' => 'File', + 'type' => 'File', // 日志保存目录 - 'path' => '', + 'path' => '', // 日志记录级别 - 'level' => [], + 'level' => [], + // 单文件日志写入 + 'single' => false, + // 独立日志级别 + 'apart_level' => [], + // 最大日志文件数量 + 'max_files' => 0, ]; -- Gitee From 6a3ba0b8e52ae3337bafb97c4c730c6d484f6860 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 22 Mar 2018 17:24:07 +0800 Subject: [PATCH 28/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/app.php b/config/app.php index 2738e81..50addb8 100644 --- a/config/app.php +++ b/config/app.php @@ -39,7 +39,7 @@ return [ // 默认JSONP处理方法 'var_jsonp_handler' => 'callback', // 默认时区 - 'default_timezone' => 'PRC', + 'default_timezone' => 'Asia/Shanghai', // 是否开启多语言 'lang_switch_on' => false, // 默认全局过滤方法 用逗号分隔多个 -- Gitee From 6eda63b3d642c1bfdf6761091f7c631e8e7eecc6 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 26 Mar 2018 22:53:53 +0800 Subject: [PATCH 29/58] =?UTF-8?q?.gitignore=E6=96=87=E4=BB=B6=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7846e89..a3d20e0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,6 @@ -.idea -composer.lock +/.idea +/.vscode +/vendor *.log thinkphp +.env \ No newline at end of file -- Gitee From 313e9ae0d52ee4c8712a307e269084edec538a8b Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 5 Apr 2018 11:03:31 +0800 Subject: [PATCH 30/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 -- config/console.php | 19 +++++++++++++++++++ config/log.php | 2 ++ config/template.php | 2 ++ 4 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 config/console.php diff --git a/config/app.php b/config/app.php index 50addb8..9a8f2dd 100644 --- a/config/app.php +++ b/config/app.php @@ -22,8 +22,6 @@ return [ 'app_debug' => false, // 应用Trace 'app_trace' => false, - // 应用模式状态 - 'app_status' => '', // 是否支持多模块 'app_multi_module' => true, // 入口自动绑定模块 diff --git a/config/console.php b/config/console.php new file mode 100644 index 0000000..b0f9165 --- /dev/null +++ b/config/console.php @@ -0,0 +1,19 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 控制台配置 +// +---------------------------------------------------------------------- +return [ + 'name' => 'Think Console', + 'version' => '0.1', + 'user' => null, +]; diff --git a/config/log.php b/config/log.php index 6305e75..b3d87b4 100644 --- a/config/log.php +++ b/config/log.php @@ -25,4 +25,6 @@ return [ 'apart_level' => [], // 最大日志文件数量 'max_files' => 0, + // 是否关闭日志写入 + 'close' => false, ]; diff --git a/config/template.php b/config/template.php index 0877562..c6ed537 100644 --- a/config/template.php +++ b/config/template.php @@ -16,6 +16,8 @@ return [ // 模板引擎类型 支持 php think 支持扩展 'type' => 'Think', + // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 + 'auto_rule' => 1, // 模板路径 'view_path' => '', // 模板后缀 -- Gitee From 0b08e1a9f37c8cfb9ff1f76be7246f1ab1b5de02 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sat, 14 Apr 2018 12:55:26 +0800 Subject: [PATCH 31/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/template.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/template.php b/config/template.php index 0877562..299bd6f 100644 --- a/config/template.php +++ b/config/template.php @@ -16,6 +16,8 @@ return [ // 模板引擎类型 支持 php think 支持扩展 'type' => 'Think', + // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 3 保持操作方法 + 'auto_rule' => 1, // 模板路径 'view_path' => '', // 模板后缀 -- Gitee From 40935ee104f55e8f0fd5bd99995e6413a58096fd Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 19 Apr 2018 18:11:22 +0800 Subject: [PATCH 32/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/app.php b/config/app.php index 9a8f2dd..2d4f009 100644 --- a/config/app.php +++ b/config/app.php @@ -86,6 +86,8 @@ return [ 'pathinfo_depr' => '/', // HTTPS代理标识 'https_agent_name' => '', + // IP代理获取标识 + 'http_agent_ip' => 'X-REAL-IP', // URL伪静态后缀 'url_html_suffix' => 'html', // URL普通方式参数 用于自动生成 -- Gitee From e0958ddc3beae79e8e25bce7d6108a993bf05f8b Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 25 Apr 2018 18:30:33 +0800 Subject: [PATCH 33/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/database.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/database.php b/config/database.php index a0196db..d14b952 100644 --- a/config/database.php +++ b/config/database.php @@ -40,6 +40,8 @@ return [ 'master_num' => 1, // 指定从服务器序号 'slave_no' => '', + // 自动读取主库数据 + 'read_master' => false, // 是否严格检查字段是否存在 'fields_strict' => true, // 数据集返回类型 -- Gitee From fea22b672cf96f97cac4b0b3f165abd465dfb58a Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 11 May 2018 15:07:41 +0800 Subject: [PATCH 34/58] =?UTF-8?q?=E5=A2=9E=E5=8A=A0provider=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/provider.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 application/provider.php diff --git a/application/provider.php b/application/provider.php new file mode 100644 index 0000000..d0fcd24 --- /dev/null +++ b/application/provider.php @@ -0,0 +1,14 @@ + +// +---------------------------------------------------------------------- + +// 应用容器绑定定义 +return [ +]; -- Gitee From 980ba6ff0dc2e87808d130115245e021c7f05bee Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 18 May 2018 12:03:08 +0800 Subject: [PATCH 35/58] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/config/app.php b/config/app.php index 2d4f009..24b9668 100644 --- a/config/app.php +++ b/config/app.php @@ -122,6 +122,10 @@ return [ 'request_cache_expire' => null, // 全局请求缓存排除规则 'request_cache_except' => [], + // 是否开启路由缓存 + 'route_check_cache' => false, + // 路由缓存的Key自定义设置(闭包),默认为当前URL和请求类型的md5 + 'route_check_cache_key' => '', // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', -- Gitee From 829ed7b31319d4740e210aff98654491c350f178 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 1 Jun 2018 12:12:08 +0800 Subject: [PATCH 36/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/app.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/app.php b/config/app.php index 24b9668..5a0f1dd 100644 --- a/config/app.php +++ b/config/app.php @@ -126,6 +126,8 @@ return [ 'route_check_cache' => false, // 路由缓存的Key自定义设置(闭包),默认为当前URL和请求类型的md5 'route_check_cache_key' => '', + // 路由缓存类型及参数 + 'route_cache_option' => '', // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', -- Gitee From 490d97b5587243d16542e8b8cebe4fe955c14597 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 6 Jun 2018 14:33:12 +0800 Subject: [PATCH 37/58] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=AD=E9=97=B4?= =?UTF-8?q?=E4=BB=B6=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/middleware.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 config/middleware.php diff --git a/config/middleware.php b/config/middleware.php new file mode 100644 index 0000000..fe15ec3 --- /dev/null +++ b/config/middleware.php @@ -0,0 +1,18 @@ + +// +---------------------------------------------------------------------- + +// +---------------------------------------------------------------------- +// | 中间件配置 +// +---------------------------------------------------------------------- +return [ + // 默认中间件命名空间 + 'default_namespace' => 'app\\http\\middleware\\', +]; -- Gitee From c76156fbb2917edd9346172a3b2bfa785bcf3899 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 18 Jun 2018 08:39:23 +0800 Subject: [PATCH 38/58] =?UTF-8?q?readme=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 9 ++++++--- config/app.php | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index dc1c993..d40810b 100644 --- a/README.md +++ b/README.md @@ -88,9 +88,8 @@ www WEB部署目录(或者子目录) ├─think 命令行入口文件 ~~~ -> router.php用于php自带webserver支持,可用于快速测试 -> 切换到public目录后,启动命令:php -S localhost:8888 router.php -> 上面的目录结构和名称是可以改变的,这取决于你的入口文件和配置参数。 +> 可以使用php自带webserver快速测试 +> 切换到根目录后,启动命令:php think run ## 升级指导 @@ -125,6 +124,7 @@ www WEB部署目录(或者子目录) * 类名和类文件名保持一致,统一采用驼峰法命名(首字母大写); ### 函数和类、属性命名 + * 类的命名采用驼峰法,并且首字母大写,例如 `User`、`UserType`,默认不需要添加后缀,例如`UserController`应该直接命名为`User`; * 函数的命名使用小写字母和下划线(小写字母开头)的方式,例如 `get_client_ip`; * 方法的命名使用驼峰法,并且首字母小写,例如 `getUserName`; @@ -132,13 +132,16 @@ www WEB部署目录(或者子目录) * 以双下划线“__”打头的函数或方法作为魔法方法,例如 `__call` 和 `__autoload`; ### 常量和配置 + * 常量以大写字母和下划线命名,例如 `APP_PATH`和 `THINK_PATH`; * 配置参数以小写字母和下划线命名,例如 `url_route_on` 和`url_convert`; ### 数据表和字段 + * 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 `think_user` 表和 `user_name`字段,不建议使用驼峰和中文作为数据表字段命名。 ## 参与开发 + 请参阅 [ThinkPHP5 核心框架包](https://github.com/top-think/framework)。 ## 版权信息 diff --git a/config/app.php b/config/app.php index 5a0f1dd..680c56c 100644 --- a/config/app.php +++ b/config/app.php @@ -127,7 +127,7 @@ return [ // 路由缓存的Key自定义设置(闭包),默认为当前URL和请求类型的md5 'route_check_cache_key' => '', // 路由缓存类型及参数 - 'route_cache_option' => '', + 'route_cache_option' => [], // 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl', -- Gitee From c83cf3ef47c59d955882f27968f0adc5309e797d Mon Sep 17 00:00:00 2001 From: ThinkPHP Date: Fri, 13 Jul 2018 16:53:57 +0800 Subject: [PATCH 39/58] =?UTF-8?q?readme=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d40810b..1aae74b 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,7 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 + 配置采用二级 + 依赖注入完善 + 中间件支持(V5.1.6+) + + Swoole/Workerman支持(V5.1.18+) > ThinkPHP5的运行环境要求PHP5.6以上。 -- Gitee From 80c8f956ceb93ab53b256fab4ca47f522bd52e8a Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 25 Jul 2018 18:00:44 +0800 Subject: [PATCH 40/58] =?UTF-8?q?readme=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d40810b..bedbba9 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,9 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 + 改进查询机制 + 配置采用二级 + 依赖注入完善 + + 支持`PSR-3`日志规范 + 中间件支持(V5.1.6+) + + 支持`Swoole`/`Workerman`运行(`V5.1.18+`) > ThinkPHP5的运行环境要求PHP5.6以上。 -- Gitee From 8dad175083a3928d39e2a26148cdad427eaaf06d Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 25 Jul 2018 18:02:31 +0800 Subject: [PATCH 41/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 52 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index bedbba9..c4072b0 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,37 @@ ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特 > ThinkPHP5的运行环境要求PHP5.6以上。 +## 安装 + +使用composer安装 + +~~~ +composer create-project topthink/think tp +~~~ + +启动服务 + +~~~ +cd tp +php think run +~~~ + +然后就可以在浏览器中访问 + +~~~ +http://localhost:8000 +~~~ + +更新框架 +~~~ +composer update topthink/framework +~~~ + + +## 在线手册 + ++ [完全开发手册](https://www.kancloud.cn/manual/thinkphp5_1/content) ++ [升级指导](https://www.kancloud.cn/manual/thinkphp5_1/354155) ## 目录结构 @@ -93,27 +124,6 @@ www WEB部署目录(或者子目录) > 可以使用php自带webserver快速测试 > 切换到根目录后,启动命令:php think run -## 升级指导 - -原有下面系统类库的命名空间需要调整: - -* think\App => think\facade\App (或者 App ) -* think\Cache => think\facade\Cache (或者 Cache ) -* think\Config => think\facade\Config (或者 Config ) -* think\Cookie => think\facade\Cookie (或者 Cookie ) -* think\Debug => think\facade\Debug (或者 Debug ) -* think\Hook => think\facade\Hook (或者 Hook ) -* think\Lang => think\facade\Lang (或者 Lang ) -* think\Log => think\facade\Log (或者 Log ) -* think\Request => think\facade\Request (或者 Request ) -* think\Response => think\facade\Reponse (或者 Reponse ) -* think\Route => think\facade\Route (或者 Route ) -* think\Session => think\facade\Session (或者 Session ) -* think\Url => think\facade\Url (或者 Url ) - -原有的配置文件config.php 拆分为app.php cache.php 等独立配置文件 放入config目录。 -原有的路由定义文件route.php 移动到route目录 - ## 命名规范 `ThinkPHP5`遵循PSR-2命名规范和PSR-4自动加载规范,并且注意如下规范: -- Gitee From 598340d5594b1e2b13600ffb3c412dc9dd1a27e6 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 5 Aug 2018 15:37:42 +0800 Subject: [PATCH 42/58] =?UTF-8?q?readme=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c9781e2..1534e4e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,15 @@ -ThinkPHP 5.1 +![](http://www.thinkphp.cn/Uploads/editor/2016-06-23/576b4732a6e04.png) + +ThinkPHP 5.1 —— 12载初心,你值得信赖的PHP框架 =============== +[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/top-think/framework/badges/quality-score.png?b=5.1)](https://scrutinizer-ci.com/g/top-think/framework/?branch=5.1) +[![Build Status](https://travis-ci.org/top-think/framework.svg?branch=master)](https://travis-ci.org/top-think/framework) +[![Total Downloads](https://poser.pugx.org/topthink/framework/downloads)](https://packagist.org/packages/topthink/framework) +[![Latest Stable Version](https://poser.pugx.org/topthink/framework/v/stable)](https://packagist.org/packages/topthink/framework) +[![PHP Version](https://img.shields.io/badge/php-%3E%3D5.6-8892BF.svg)](http://www.php.net/) +[![License](https://poser.pugx.org/topthink/framework/license)](https://packagist.org/packages/topthink/framework) + ThinkPHP5.1对底层架构做了进一步的改进,减少依赖,其主要特性包括: + 采用容器统一管理对象 -- Gitee From 1d1ad99acd57ddeedd78521abac69ab6ef06e51e Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 5 Sep 2018 11:22:55 +0800 Subject: [PATCH 43/58] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/console.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/config/console.php b/config/console.php index b0f9165..a7fabca 100644 --- a/config/console.php +++ b/config/console.php @@ -13,7 +13,8 @@ // | 控制台配置 // +---------------------------------------------------------------------- return [ - 'name' => 'Think Console', - 'version' => '0.1', - 'user' => null, + 'name' => 'Think Console', + 'version' => '0.1', + 'user' => null, + 'auto_path' => env('app_path') . 'command' . DIRECTORY_SEPARATOR, ]; -- Gitee From 95e6bed87c22ab1cf03190868239c574575b217a Mon Sep 17 00:00:00 2001 From: Vace Date: Tue, 25 Sep 2018 11:31:27 +0800 Subject: [PATCH 44/58] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20Mac=20OS=20X?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E4=B8=8B=E5=BF=BD=E7=95=A5=E6=AD=A4=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 此系统下 .DS_Store 可能会造成安全隐患(https://zh.wikipedia.org/wiki/.DS_Store) --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index a3d20e0..2b6f52c 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ /vendor *.log thinkphp -.env \ No newline at end of file +.env +.DS_Store -- Gitee From 4f2da3cb80b888c5125f5c2665f5c01d3d7afc44 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 12 Oct 2018 11:33:41 +0800 Subject: [PATCH 45/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LICENSE.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE.txt b/LICENSE.txt index 574a39c..774fa76 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,6 @@ ThinkPHP遵循Apache2开源协议发布,并提供免费使用。 -版权所有Copyright © 2006-2016 by ThinkPHP (http://thinkphp.cn) +版权所有Copyright © 2006-2018 by ThinkPHP (http://thinkphp.cn) All rights reserved。 ThinkPHP® 商标和著作权所有者为上海顶想信息科技有限公司。 -- Gitee From f026be38db1e7aa0ce6494f81bab739ed4c6c981 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 22 Oct 2018 10:28:57 +0800 Subject: [PATCH 46/58] =?UTF-8?q?readme=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1534e4e..8b53697 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ![](http://www.thinkphp.cn/Uploads/editor/2016-06-23/576b4732a6e04.png) -ThinkPHP 5.1 —— 12载初心,你值得信赖的PHP框架 +ThinkPHP 5.1(LTS版本) —— 12载初心,你值得信赖的PHP框架 =============== [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/top-think/framework/badges/quality-score.png?b=5.1)](https://scrutinizer-ci.com/g/top-think/framework/?branch=5.1) -- Gitee From 90a5d3c200b262cd08bf10887aefce59d5fea815 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 29 Oct 2018 12:19:52 +0800 Subject: [PATCH 47/58] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 737 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 737 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..f345670 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,737 @@ +## V5.1.28 LTS(2018-10-29) + +该版本主要修正了上一个版本存在的一些问题,并改进了关联查询 + +* 改进聚合查询方法的字段支持DISTINCT +* 改进定义路由后url函数的端口生成 +* 改进控制器中间件对`swoole`等的支持 +* 改进Log类`save`方法 +* 改进验证类的闭包验证参数 +* 多对多关联支持指定中间表数据的名称 +* 关联聚合查询支持闭包方式指定聚合字段 +* 改进Lang类`get`方法 +* 多对多关联增加判断关联数据是否存在的方法 +* 改进关联查询使用`fetchsql`的情况 +* 改进修改器的是否已经执行判断 +* 增加`afterWith`和`beforeWith`验证规则 用于比较日期字段 + +## V5.1.27 LTS(2018-10-22) + +该版本主要修正了路由绑定的参数,改进了修改器的执行多次问题,并正式宣布为LTS版本! + + +* 修正路由绑定的参数丢失问题 +* 修正路由别名的参数获取 +* 改进修改器会执行多次的问题 + +## V5.1.26(2018-10-12) + +该版本主要修正了上一个版本的一些问题,并改进了全局查询范围的支持,同时包含了一个安全更新。 + + +* 修正单一模块下注解路由无效的问题 +* 改进数据库的聚合查询的字段处理 +* 模型类增加`globalScope`属性定义 用于指定全局的查询范围 +* 模型的`useGlobalScope`方法支持传入数组 用于指定当前查询需要使用的全局查询范围 +* 改进数据集的`order`方法对数字类型的支持 +* 修正上一个版本`order`方法解析的一处BUG +* 排序字段不合法或者错误的时候抛出异常 +* 改进`Request`类的`file`方法对上传文件的错误判断 + +## V5.1.25(2018-9-21) + +该版本主要改进了查询参数绑定的性能和对浮点型的支持,以及一些细节的完善。 + +* 修正一处命令行问题 +* 改进`Socketlog`日志驱动,支持自定义默认展开日志类别 +* 修正`MorphMany`一处bug +* 跳转到上次记住的url,并支持默认值 +* 改进模型的异常提示 +* 改进参数绑定对浮点型的支持 +* 改进`order`方法解析 +* 改进`json`字段数据的自动编码 +* 改进日志`log_write`可能造成的日志写入死循环 +* Log类增加`log_level`行为标签位置,用于对某个类型的日志进行处理 +* Route类增加`clear`方法清空路由规则 +* 分布式数据库配置支持使用数组 +* 单日志文件也支持`max_files`参数 +* 改进查询参数绑定的性能 +* 改进别名路由的URL后缀参数检测 +* 控制器前置方法和控制器中间件的`only`和`except`定义不区分大小写 + +## V5.1.24(2018-9-5) + +该版本主要增加了命令行的表格输出功能,并增加了查看路由定义的指令,以及修正了社区的一些反馈问题。 + +* 修正`Request`类的`file`方法 +* 修正路由的`cache`方法 +* 修正路由缓存的一处问题 +* 改进上传文件获取的异常处理 +* 改进`fetchCollection`方法支持传入数据集类名 +* 修正多级控制器的注解路由生成 +* 改进`Middleware`类`clear`方法 +* 增加`route:list`指令用于[查看定义的路由](752690) 并支持排序 +* 命令行增加`Table`输出类 +* `Command`类增加`table`方法用于输出表格 +* 改进搜索器查询方法支持别名定义 +* 命令行配置增加`auto_path`参数用于定义自动载入的命令类路径 +* 增加`make:command`指令用于[快速生成指令](354146) +* 改进`make:controller`指令对操作方法后缀的支持 +* 改进命令行的定义文件支持索引数组 用于指令对象的惰性加载 +* 改进`value`和`column`方法对后续查询结果的影响 +* 改进`RuleName`类的`setRule`方法 + +## V5.1.23(2018-8-23) + +该版本主要改进了数据集对象的处理,增加了`findOrEmpty`方法,并且修正了一些社区反馈的BUG。 + +* 数据集类增加`diff`/`intersect`方法用于获取差集和交集(默认根据主键值比较) +* 数据集类增加`order`方法支持指定字段排序 +* 数据集类增加`map`方法使用回调函数处理数据并返回新的数据集对象 +* Db增加`allowEmpty`方法允许`find`方法在没有数据的时候返回空数组或者空模型对象而不是null +* Db增加`findOrEmpty`方法 +* Db增加`fetchCollection`方法用于指定查询返回数据集对象 +* 改进`order`方法的数组方式解析,增强安全性 +* 改进`withSearch`方法,支持第三个参数传入字段前缀标识,用于多表查询字段搜索 +* 修正`optimize:route`指令开启类库后缀后的注解路由生成 +* 修正redis缓存及session驱动 +* 支持指定`Yaconf`的独立配置文件 +* 增加`yaconf`助手函数用于配置文件 + + +## V5.1.22(2018-8-9) + +该版本主要增加了模型搜索器和`withJoin`方法,完善了模型输出和对`Yaconf`的支持,修正了一些社区反馈的BUG。 + +* 改进一对一关联的`table`识别问题 +* 改进内置`Facade`类 +* 增加`withJoin`方法支持`join`方式的[一对一关联](一对一关联.md)查询 +* 改进`join`预载入查询的空数据问题 +* 改进`Config`类的`load`方法支持快速加载配置文件 +* 改进`execute`方法和事务的断线重连 +* 改进`memcache`驱动的`has`方法 +* 模型类支持定义[搜索器](搜索器.md)方法 +* 完善`Config`类对`Yaconf`的支持 +* 改进模型的`hidden/visible/append/withAttr`方法,支持在[查询前后调用](数组访问.md),以及支持数据集对象 +* 数据集对象增加`where`方法根据字段或者关联数据[过滤数据](模型数据集.md) +* 改进AJAX请求的`204`判断 + + +## V5.1.21(2018-8-2) + +该版本主要增加了下载响应对象和数组查询对象的支持,并修正了一些社区反馈的问题。 + +* 改进核心对象的无用信息调试输出 +* 改进模型的`isRelationAttr`方法判断 +* 模型类的`get`和`all`方法并入Db类 +* 增加[下载响应对象](文件下载.md)和`download`助手函数 +* 修正别名路由配置定义读取 +* 改进`resultToModel`方法 +* 修正开启类库后缀后的注解路由生成 +* `Response`类增加`noCache`快捷方法 +* 改进路由对象在`Swoole`/`Workerman`下面参数多次合并问题 +* 修正路由`ajax`/`pjax`参数后路由变量无法正确获取的问题 +* 增加清除中间件的方法 +* 改进依赖注入的参数规范自动识别(便于对接前端小写+下划线规范) +* 改进`hasWhere`的数组条件的字段判断 +* 增加[数组查询对象](高级查询.md)`Where`支持(喜欢数组查询的福音) +* 改进多对多关联的闭包支持 + +## V5.1.20(2018-7-25) + +该版本主要增加了Db和模型的动态获取器的支持,并修正了一些已知问题。 + +* Db类添加[获取器支持](703981) +* 支持模型及关联模型字段[动态定义获取器](354046) +* 动态获取器支持`JSON`字段 +* 改进路由的`before`行为执行(匹配后执行) +* `Config`类支持`Yaconf` +* 改进Url生成的端口问题 +* Request类增加`setUrl`和`setBaseUrl`方法 +* 改进页面trace的信息显示 +* 修正`MorphOne`关联 +* 命令行添加[查看版本指令](703994) + +## V5.1.19 (2018-7-13) + +该版本是一个小幅改进版本,针对`Swoole`和`Workerman`的`Cookie`支持做了一些改进,并修正了一些已知的问题。 + + +* 改进query类`delete`方法对软删除条件判断 +* 修正分表查询的软删除问题 +* 模型查询的时候同时传入`table`和`name`属性 +* 容器类增加`IteratorAggregate`和`Countable`接口支持 +* 路由分组支持对下面的资源路由统一设置`only/except/vars`参数 +* 改进Cookie类更好支持扩展 +* 改进Request类`post`方法 +* 改进模型自关联的自动识别 +* 改进Request类对`php://input`数据的处理 + + +## V5.1.18 (2018-6-30) + +该版本主要完善了对`Swoole`和`Workerman`的`HttpServer`运行支持,改进`Request`类,并修正了一些已知的问题。 + +* 改进关联`append`方法的处理 +* 路由初始化和检测方法分离 +* 修正`destroy`方法强制删除 +* `app_init`钩子位置移入`run`方法 +* `think-swoole`扩展更新到2.0版本 +* `think-worker`扩展更新到2.0版本 +* 改进Url生成的域名自动识别 +* `Request`类增加`setPathinfo`方法和`setHost`方法 +* `Request`类增加`withGet`/`withPost`/`withHeader`/`withServer`/`withCookie`/`withEnv`方法进行赋值操作 +* Route类改进`host`属性的获取 +* 解决注解路由配置不生效的问题 +* 取消Test日志驱动,改为使用`close`设置关闭全局日志写入 +* 修正路由的`response`参数 +* 修正204响应输出的判断 + +## V5.1.17 (2018-6-18) + +该版本主要增加了控制器中间件的支持,改进了路由功能,并且修正了社区反馈的一些问题。 + +* 修正软删除的`delete`方法 +* 修正Query类`Count`方法 +* 改进多对多`detach`方法 +* 改进Request类`Session`方法 +* 增加控制器中间件支持 +* 模型类增加`jsonAssoc`属性用于定义json数据是否返回数组 +* 修正Request类`method`方法的请求伪装 +* 改进静态路由的匹配 +* 分组首页路由自动完整匹配 +* 改进sqlsrv的`column`方法 +* 日志类的`apart_level`配置支持true自动生成对应类型的日志文件 +* 改进`204`输出判断 +* 修正cli下页面输出的BUG +* 验证类使用更高效的`ctype`验证机制 +* 改进Request类`cookie`方法 +* 修正软删除的`withTrashed`方法 +* 改进多态一对多的预载入查询 +* 改进Query类`column`方法的缓存读取 +* Query类增加`whereBetweenTimeField`方法 +* 改进分组下多个相同路由规则的合并匹配问题 +* 路由类增加`getRule`/`getRuleList`方法获取定义的路由 + +## V5.1.16 (2018-6-7) + +该版本主要修正了社区反馈的一些问题,并对Request类做了进一步规范和优化。 + +* 改进Session类的`boot`方法 +* App类的初始化方法可以单独执行 +* 改进Request类的`param`方法 +* 改进资源路由的变量替换 +* Request类增加`__isset`方法 +* 改进`useGlobalScope`方法对软删除的影响 +* 修正命令行调用 +* 改进Cookie类`init`方法 +* 改进多对多关联删除的返回值 +* 一对多关联写入支持`replace` +* 路由增加`filter`检测方法,用于通过请求参数检测路由是否匹配 +* 取消Request类`session/env/server`方法的`filter`参数 +* 改进关联的指定属性输出 +* 模型删除操作删除后不清空对象数据仅作标记 +* 调整模型的`save`方法返回值为布尔值 +* 修正Request类`isAjax`方法 +* 修正中间件的模块配置读取 +* 取消Request类的请求变量的设置功能 +* 取消请求变量获取的默认修饰符 +* Request类增加`setAction/setModule/setController`方法 +* 关联模型的`delete`方法调用Query类 +* 改进URL生成的域名识别 +* 改进URL检测对已定义路由的域名判断 +* 模型类增加`isExists`和`isForce`方法 +* 软删除的`destroy`和`restore`方法返回值调整为布尔值 + +## V5.1.15 (2018-6-1) + +该版本主要改进了路由缓存的性能和缓存方式设置,增加了JSON格式文件日志的支持,并修正了社区反馈的一些问题。 + +* 容器类增加`exists`方法 仅判断是否存在对象实例 +* 取消配置类的`autoload`方法 +* 改进路由缓存大小提高性能 +* 改进Dispatch类`init`方法 +* 增加`make:validate`指令生成验证器类 +* Config类`get`方法支持默认值参数 +* 修正字段缓存指令 +* 改进App类对`null`数据的返回 +* 改进模型类的`__isset`方法判断 +* 修正`Query`类的`withAggregate`方法 +* 改进`RuleItem`类的`setRuleName`方法 +* 修正依赖注入和参数的冲突问题 +* 修正Db类对第三方驱动的支持 +* 修正模型类查询对象问题 +* 修正File缓存驱动的`has`方法 +* 修正资源路由嵌套 +* 改进Request类对`$_SERVER`变量的读取 +* 改进请求缓存处理 +* 路由缓存支持指定单独的缓存方式和参数 +* 修正资源路由的中间件多次执行问题 +* 修正`optimize:config`指令 +* 文件日志支持`JSON`格式日志保存 +* 修正Db类`connect`方法 +* 改进Log类`write`方法不会自动写入之前日志 +* 模型的关联操作默认启用事务 +* 改进软删除的事件响应 + +## V5.1.14 (2018-5-18) + +该版本主要对底层容器进行了一些优化改进,并增加了路由缓存功能,可以进一步提升路由性能。 + +* 依赖注入的对象参数传入改进 +* 改进核心类的容器实例化 +* 改进日期字段的读取 +* 改进验证类的`getScene`方法 +* 模型的`create`方法和`save`方法支持`replace`操作 +* 改进`Db`类的调用机制 +* App类调整为容器类 +* 改进容器默认绑定 +* `Loader`类增加工厂类的实例化方法 +* 增加路由变量默认规则配置参数 +* 增加路由缓存设计 +* 错误处理机制改进 +* 增加清空路由缓存指令 + + +## V5.1.13 (2018-5-11) + +该版本主要增加了MySQL的XA事务支持,模型事件支持观察者,以及对Facade类的改进。 + +* 改进自动缓存 +* 改进Url生成 +* 修正数据缓存 +* 修正`value`方法的缓存 +* `join`方法和`view`方法的条件支持使用`Expression`对象 +* 改进驱动的`parseKey`方法 +* 改进Request类`host`方法和`domain`方法对端口的处理 +* 模型增加`withEvent`方法用于控制当前操作是否需要执行模型事件 +* 模型`setInc/setDec`方法支持更新事件 +* 模型添加`before_restore/after_restore`事件 +* 增加模型事件观察者 +* 路由增加`mobile`方法设置是否允许手机访问 +* 数据库XA事务支持 +* 改进索引数组查询对`IN`查询的支持 +* 修正`invokeMethod`方法 +* 修正空数据写入返回值的BUG +* redis驱动支持`predis` +* 改进`parseData`方法 +* 改进模块加载 +* App类初始化方法调整 +* 改进数组查询对表达式`Expression`对象支持 +* 改进闭包的依赖注入调用 +* 改进多对多关联的中间表模型更新 +* 增加容器中对象的自定义实例化 + +## V5.1.12 (2018-4-25) + +该版本主要改进了主从查询的及时性,并支持动态设置请求数据。 + +* 支持动态设置请求数据 +* 改进`comment`方法解析 +* 修正App类`__unset`方法 +* 改进url生成的域名绑定 +* 改进主从查询的及时性 +* 修正`value`的数据缓存功能 +* 改进分页类的集合对象方法调用 +* 改进Db类的代码提示 +* SQL日志增加主从标记 + +## V5.1.11 (2018-4-19) + +该版本为安全和修正版本,改进了JSON查询的参数绑定问题和容器类对象实例获取,并包含一处可能的安全隐患,建议更新。 + +* 支持指定JSON数据查询的字段类型 +* 修正`selectInsert`方法 +* `whereColumn`方法支持数组方式 +* 改进容器类`make`方法 +* 容器类`delete`方法支持数组 +* 改进`composer`自动加载 +* 改进模板引擎 +* 修正`like`查询的一处安全隐患 + +## V5.1.10 (2018-4-16) + +该版本为修正版本,修正上一个版本的一些BUG,并增强了`think clear`指令。 + +* 改进`orderField`方法 +* 改进`exists`查询 +* 修改cli模式入口文件位置计算 +* 修正`null`查询 +* 改进`parseTime`方法 +* 修正关联预载入查询 +* 改进`mysql`驱动 +* 改进`think clear`指令 支持 `-c -l -r `选项 +* 改进路由规则对`/`结尾的支持 + +## V5.1.9 (2018-4-12) + +该版本主要是一些改进和修正,并包含一个安全更新,是一个推荐更新版本。 + +* 默认模板渲染规则支持配置保持操作方法名 +* 改进`Request`类的`ip`方法 +* 支持模型软删除字段的默认值定义 +* 改进路由变量规则对中文的支持 +* 使用闭包查询的时候使用`cache(true)` 抛出异常提示 +* 改进`Loader`类`loadComposerAutoloadFiles`方法 +* 改进查询方法安全性 +* 修正路由地址中控制器名驼峰问题 +* 调整上一个版本的`module_init`和`app_begin`的钩子顺序问题 +* 改进CLI命令行执行的问题 +* 修正社区反馈的其它问题 + +## V5.1.8 (2018-4-5) + +该版本主要改进了中间件的域名和模块支持,并同时修正了几个已知问题。 + +* 增加`template.auto_rule` 参数设置默认模板渲染的操作名自动转换规则 +* 默认模板渲染规则改由视图驱动实现 +* 修正路由标识定义 +* 修正控制器路由方法 +* 改进Request类`ip`方法支持自定义代理IP参数 +* 路由注册中间件支持数组方式别名 +* 改进命令行执行下的`composer`自动加载 +* 添加域名中间件注册支持 +* 全局中间件支持模块定义文件 +* Log日志配置支持`close`参数可以全局关闭日志写入 +* 中间件方法中捕获`HttpResponseException`异常 +* 改进中间件的闭包参数传入 +* 改进分组路由的延迟解析 +* 改进URL生成对域名绑定的支持 +* 改进文件缓存和文件日志驱动的并发支持 + +## V5.1.7 (2018-3-28) + +该版本主要修正了路由的一些问题,并改进了查询的安全性。 + +* 支持`middleware`配置文件预先定义中间件别名方便路由调用 +* 修正资源路由 +* 改进`field`方法 自动识别`fieldRaw` +* 增加`Expression`类 +* Query类增加`raw`方法 +* Query类的`field`/ `order` 和` where`方法都支持使用`raw`表达式查询 +* 改进`inc/dec`查询 支持批量更新 +* 改进路由分组 +* 改进Response类`create`方法 +* 改进composer自动加载 +* 修正域名路由的`append`方法 +* 修正操作方法的初始化方法获取不到问题 + +## V5.1.6 (2018-3-26) + +该版本主要改进了路由规则的匹配算法,大幅提升了路由性能。并正式引入了中间件的支持,可以在路由中定义或者全局定义。另外包含了一个安全更新,是一个建议更新版本。 + +* 改进URL生成对路由`ext`方法的支持 +* 改进查询缓存对不同数据库相同表名的支持 +* 改进composer自动加载的性能 +* 改进空路由变量对默认参数的影响 +* mysql的`json`字段查询支持多级 +* Query类增加`option`方法 +* 优化路由匹配 +* 修复验证规则数字键名丢失问题 +* 改进路由Url生成 +* 改进一对一关联预载入查询 +* Request类增加`rootDomain`方法 +* 支持API资源控制器生成 `make:controller --api` +* 优化Template类的标签解析 +* 容器类增加删除和清除对象实例的方法 +* 修正MorphMany关联的`eagerlyMorphToMany`方法一处错误 +* Container类的异常捕获改进 +* Domain对象支持`bind`方法 +* 修正分页参数 +* 默认模板的输出规则不受URL影响 +* 注解路由支持多级控制器 +* Query类增加`getNumRows`方法获取前次操作影响的记录数 +* 改进查询条件的性能 +* 改进模型类`readTransform`方法对序列化类型的处理 +* Log类增加`close`方法可以临时关闭当前请求的日志写入 +* 文件日志方式增加自动清理功能(设置`max_files`参数) +* 修正Query类的`getPk`方法 +* 修正模板缓存的布局开关问题 +* 修正Query类`select`方法的缓存 +* 改进input助手函数 +* 改进断线重连的信息判断 +* 改进正则验证方法 +* 调整语言包的加载顺序 放到`app_init`之前 +* controller类`fetch`方法改为`final` +* 路由地址中的变量支持使用``方式 +* 改进XMLResponse 支持传入编码过的xml内容 +* 修正Query类`view`方法的数组表名支持 +* 改进路由的模型闭包绑定 +* 改进分组变量规则的继承 +* 改进`cli-server`模式下的`composer`自动加载 +* 路由变量规则异常捕获 +* 引入中间件支持 +* 路由定义增加`middleware`方法 +* 增加生成中间件指令`make:middleware` +* 增加全局中间件定义支持 +* 改进`optimize:config`指令对全局中间件的支持 +* 改进config类`has`方法 +* 改进时间查询的参数绑定 +* 改进`inc/dec/exp`查询的安全性 + + +## V5.1.5 (2018-1-31) + +该版本主要增强了数据库的JSON查询,并支持JSON字段的聚合查询,改进了一些性能问题,修正了路由的一些BUG,主要更新如下: + +* 改进数据集查询对`JSON`数据的支持 +* 改进聚合查询对`JSON`字段的支持 +* 模型类增加`getOrFail`方法 +* 改进数据库驱动的`parseKey`方法 +* 改进Query类`join`方法的自关联查询 +* 改进数据查询不存在不生成查询缓存 +* 增加`run`命令行指令启动内置服务器 +* `Request`类`pathinfo`方法改进对`cli-server`支持 +* `Session`类增加`use_lock`配置参数设置是否启用锁机制 +* 优化`File`缓存自动生成空目录的问题 +* 域名及分组路由支持`append`方法传递隐式参数 +* 改进日志的并发写入问题 +* 改进`Query`类的`where`方法支持传入`Query`对象 +* 支持设置单个日志文件的文件名 +* 修正路由规则的域名条件约束 +* `Request`类增加`subDomain`方法用于获取当前子域名 +* `Response`类增加`allowCache`方法控制是否允许请求缓存 +* `Request`类增加`sendData`方法便于扩展 +* 改进`Env`类不依赖`putenv`方法 +* 改进控制台`trace`显示错误 +* 改进`MorphTo`关联 +* 改进完整路由匹配后带斜线访问出错的情况 +* 改进路由的多级分组问题 +* 路由url地址生成支持多级分组 +* 改进路由Url生成的`url_convert`参数的影响 +* 改进`miss`和`auto`路由内部解析 +* 取消预载入关联查询缓存功能 + +## V5.1.4 (2018-1-19) + +该版本主要增强了数据库和模型操作,主要更新如下: + +* 支持设置 `deleteTime`属性为`false` 关闭软删除 +* 模型增加`getError`方法 +* 改进Query类的`getTableFields`/`getFieldsType`方法 支持表名自动获取 +* 模型类`toCollection`方法增加参数指定数据集类 +* 改进`union`查询 +* 关联预载入`with`方法增加缓存参数 +* 改进模型类的`get`和`all`方法的缓存 支持关联缓存 +* 支持`order by field`操作 +* 改进`insertAll`分批写入 +* 改进`json`字段数据支持 +* 增加JSON数据的模型对象化操作 +* 改进路由`ext`参数检测 +* 修正`rule`方法的`method`参数使用 `get|post` 方式注册路由的问题 + +## V5.1.3 (2018-1-12) + +该版本主要改进了路由及调整函数加载顺序,主要更新如下: + +* 增加`env`助手函数; +* 增加`route`助手函数; +* 增加视图路由方法; +* 增加路由重定向方法; +* 路由默认区分最后的目录斜杆(支持设置不区分); +* 调整公共文件和配置文件的加载顺序(可以在配置文件中直接使用助手函数); +* 视图类增加`filter`方法设置输出过滤; +* `view`助手函数增加`filter`参数; +* 改进缓存生成指令; +* Session类的`get`方法支持获取多级; +* Request类`only`方法支持指定默认值; +* 改进路由分组; +* 修正使用闭包查询的时候自动数据缓存出错的情况; +* 废除`view_filter`钩子位置; +* 修正分组下面的资源路由; +* 改进session驱动; + +## V5.1.2 (2018-1-8) + +该版本改进了配置类及数据库类,主要更新如下: + +* 修正嵌套路由分组; +* 修正自定义模板标签界定符后表达式语法出错的情况; +* 修正自关联的多次调用问题; +* 修正数组查询的`null`条件查询; +* 修正Query类的`order`及`field`的一处可能的BUG; +* 配置参数设置支持三级; +* 配置对象支持`ArrayAccess`; +* App类增加`path`方法用于设置应用目录; +* 关联定义增加`selfRelation`方法用于设置是否为自关联; + +## V5.1.1 (2018-1-3) + +修正一些反馈的BUG,包括: + +* 修正Cookie类存取数组的问题 +* 修正Controller的`fetch`方法 +* 改进跨域请求 +* 修正`insertAll`方法 +* 修正`chunk`方法 + +## V5.1.0 (2018-1-1) + +主要更新如下: + +* 增加注解路由支持 +* 路由支持跨域请求设置 +* 增加`app_dispatch`钩子位置 +* 修正多对多关联的`detach`方法 +* 修正软删除的`destroy`方法 +* Cookie类`httponly`参数默认为false +* 日志File驱动增加`single`参数配置记录同一个文件(不按日期生成) +* 路由的`ext`和`denyExt`方法支持不传任何参数 +* 改进模型的`save`方法对`oracle`的支持 +* Query类的`insertall`方法支持配合`data`和`limit`方法 +* 增加`whereOr`动态查询支持 +* 日志的ip地址记录改进 +* 模型`saveAll`方法支持`isUpdate`方法 +* 改进`Pivot`模型的实例化操作 +* 改进Model类的`data`方法 +* 改进多对多中间表模型类 +* 模型增加`force`方法强制更新所有数据 +* Hook类支持设置入口方法名称 +* 改进验证类 +* 改进`hasWhere`查询的数据重复问题 +* 模型的`saveall`方法返回数据集对象 +* 改进File缓存的`clear`方法 +* 缓存添加统一的序列化机制 +* 改进泛三级域名的绑定 +* 改进泛域名的传值和取值 +* Request类增加`panDomain`方法 +* 改进废弃字段判断 +* App类增加`create`方法用于实例化应用类库 +* 容器类增加`has`方法 +* 改进多数据库切换连接 +* 改进断线重连的异常捕获 +* 改进模型类`buildQuery`方法 +* Query类增加`unionAll`方法 +* 关联统计功能增强(支持Sum/Max/Min/Avg) +* 修正延迟写入 +* chunk方法支持复合主键 +* 改进JSON类型的写入 +* 改进Mysql的insertAll方法 +* Model类`save`方法改进复合主键包含自增的情况 +* 改进Query类`inc`和`dec`方法的关键字处理 +* File缓存inc和dec方法保持原来的有效期 +* 改进redis缓存的有效期判断 +* 增加checkRule方法用于单独数据的多个验证规则 +* 修正setDec方法的延迟写入 +* max和min方法增加force参数 +* 二级配置参数区分大小写 +* 改进join方法自关联的问题 +* 修正关联模型自定义表名的情况 +* Query类增加getFieldsType和getTableFields方法 +* 取消视图替换功能及view_replace_str配置参数 +* 改进域名绑定模块后的额外路由规则问题 +* 改进mysql的insertAll方法 +* 改进insertAll方法写入json字段数据的支持 +* 改进redis长连接多编号库的情况 + +## RC3版本(2017-11-6) + +主要更新如下: + +* 改进redis驱动的`get`方法 +* 修正Query类的`alias`方法 +* `File`类错误信息支持多语言 +* 修正路由的额外参数解析 +* 改进`whereTime`方法 +* 改进Model类`getAttr`方法 +* 改进App类的`controller`和`validate`方法支持多层 +* 改进`HasManyThrough`类 +* 修正软删除的`restore`方法 +* 改进`MorpthTo`关联 +* 改进数据库驱动类的`parseKey`方法 +* 增加`whereField`动态查询方法 +* 模型增加废弃字段功能 +* 改进路由的`after`行为检查和`before`行为机制 +* 改进路由分组的检查 +* 修正mysql的`json`字段查询 +* 取消Connection类的`quote`方法 +* 改进命令行的支持 +* 验证信息支持多语言 +* 修正路由模型绑定 +* 改进参数绑定类型对枚举类型的支持 +* 修正模板的`{$Think.version} `输出 +* 改进模板`date`函数解析 +* 改进`insertAll`方法支持分批执行 +* Request类`host`方法支持反向代理 +* 改进`JumpResponse`支持区分成功和错误模板 +* 改进开启类库后缀后的关联外键自动识别问题 +* 修正一对一关联的JOIN方式预载入查询问题 +* Query类增加`hidden`方法 + +## RC2版本(2017-10-17) + +主要更新如下: + +* 修正视图查询 +* 修正资源路由 +* 修正`HasMany`关联 修正`where`方法的闭包查询 +* 一对一关联绑定属性到父模型后 关联属性不再保留 +* 修正应用的命令行配置文件读取 +* 改进`Connection`类的`getCacheKey`方法 +* 改进文件上传的非法图像异常 +* 改进验证类的`unique`规则 +* Config类`get`方法支持获取一级配置 +* 修正count方法对`fetchSql`的支持 +* 修正mysql驱动对`socket`支持 +* 改进Connection类的`getRealSql`方法 +* 修正`view`助手函数 +* Query类增加`leftJoin` `rightJoin` 和 `fullJoin`方法 +* 改进app_namespace的获取 +* 改进`append`方法对一对一`bind`属性的支持 +* 改进关联的`saveall`方法的返回值 +* 路由标识设置异常修复 +* 改进Route类`rule`方法 +* 改进模型的`table`属性设置 +* 改进composer autofile的加载顺序 +* 改进`exception_handle`配置对闭包的支持 +* 改进app助手函数增加参数 +* 改进composer的加载路径判断 +* 修正路由组合变量的URL生成 +* 修正路由URL生成 +* 改进`whereTime`查询并支持扩展规则 +* File类的`move`方法第二个参数支持`false` +* 改进Config类 +* 改进缓存类`remember`方法 +* 惯例配置文件调整 Url类当普通模式参数的时候不做`urlencode`处理 +* 取消`ROOT_PATH`和`APP_PATH`常量定义 如需更改应用目录 自己重新定义入口文件 +* 增加`app_debug`的`Env`获取 +* 修正泛域名绑定 +* 改进查询表达式的解析机制 +* mysql增加`regexp`查询表达式 支持正则查询 +* 改进查询表达式的异常判断 +* 改进model类的`destroy`方法 +* 改进Builder类 取消`parseValue`方法 +* 修正like查询的参数绑定问题 +* console和start文件移出核心纳入应用库 +* 改进Db类主键删除方法 +* 改进泛域名绑定模块 +* 取消`BIND_MODULE`常量 改为在入口文件使用`bind`方法设置 +* 改进数组查询 +* 改进模板渲染的异常处理 +* 改进控制器基类的架构方法参数 +* 改进Controller类的`success`和`error`方法 +* 改进对浏览器`JSON-Handle`插件的支持 +* 优化跳转模板的移动端显示 +* 修正模型查询的`chunk`方法对时间字段的支持 +* 改进trace驱动 +* Collection类增加`push`方法 +* 改进Redis Session驱动 +* 增加JumpResponse驱动 + + +## RC1(2017-9-8) + +主要新特性为: + +* 引入容器和Facade支持 +* 依赖注入完善和支持更多场景 +* 重构的(对象化)路由 +* 配置和路由目录独立 +* 取消系统常量 +* 助手函数增强 +* 类库别名机制 +* 模型和数据库增强 +* 验证类增强 +* 模板引擎改进 +* 支持PSR-3日志规范 +* RC1版本取消了5.0多个字段批量数组查询的方式 \ No newline at end of file -- Gitee From 415ee9a0ee97e4fdebd951e0e783e5e584953b47 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 9 Nov 2018 16:49:01 +0800 Subject: [PATCH 48/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8b53697..4b96c8d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](http://www.thinkphp.cn/Uploads/editor/2016-06-23/576b4732a6e04.png) +![](https://box.kancloud.cn/5a0aaa69a5ff42657b5c4715f3d49221) ThinkPHP 5.1(LTS版本) —— 12载初心,你值得信赖的PHP框架 =============== -- Gitee From 111d8f0c40fff7479df70b7d054a160ad1c7a9f4 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 11 Nov 2018 09:19:36 +0800 Subject: [PATCH 49/58] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f345670..407622d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,28 @@ +## V5.1.29 LTS(2018-11-11) + +该版本主要改进了参数绑定的解析性能,并修正了一些反馈的问题。 + +* 改进手动参数绑定 +* 修正MISS路由的分组参数无效问题 +* 行为支持对象的方法 +* 修正全局查询范围 +* 改进`belongsto`关联的`has`方法 +* 改进`hasMany`关联 +* 改进模型观察者多次注册的问题 +* 改进`query`类的默认查询参数处理 +* 修正`parseBetween`解析方法 +* 改进路由地址生成的本地域名支持 +* 改进参数绑定的实际URL解析性能 +* 改进`Env`类的`getEnv`和`get`方法 +* 改进模板缓存的生成优化 +* 修复验证类的多语言支持 +* 修复自定义场景验证`remove`规则异常 +* File类添加是否自动补全扩展名的选项 +* 改进`strpos`对子串是否存在的判断 +* 修复`choice`无法用值选择第一个选项问题 +* 验证器支持多维数组取值验证 +* 改进解析`extend`和`block`标签的正则 + ## V5.1.28 LTS(2018-10-29) 该版本主要修正了上一个版本存在的一些问题,并改进了关联查询 -- Gitee From 39ad2b639a0e037c114135e81870716c986e7a7e Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 10 Dec 2018 14:50:27 +0800 Subject: [PATCH 50/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 407622d..7177f39 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,41 @@ +## V5.1.31 LTS (2018-12-9) + +本次版本包含一个安全更新,建议升级。 + +* 改进`field`方法 +* 改进`count`方法返回类型 +* `download`函数增加在浏览器中显示文件功能 +* 修正多对多模型的中间表数据写入 +* 改进`sqlsrv`驱动支持多个Schemas模式查询 +* 统一助手函数与\think\response\Download函数文件过期时间 +* 完善关联模型的`save`方法 增加`make`方法仅创建对象不保存 +* 修改条件表达式对静态变量的支持 +* 修正控制器名获取 +* 改进view方法的`field`解析 + +## V5.1.30 LTS(2018-11-30) + +该版本为常规更新,修正了一些社区反馈的问题。 + +主要更新如下: + +* 改进查询类的`execute`方法 +* 判断路由规则定义添加对请求类型的判断 +* 修复`orderRaw`异常 +* 修正 `optimize:autoload`指令 +* 改进软删除的`destroy`方法造成重复执行事件的问题 +* 改进验证类对扩展验证规则 始终验证 不管是否`require` +* 修复自定义验证`remove`所有规则的异常 +* 改进时间字段的自动写入支持微秒数据 +* 改进`Connection`类的`getrealsql`方法 +* 修正`https`地址的URL生成 +* 修复 `array_walk_recursive` 在低于PHP7.1消耗内部指针问题 +* 改进手动参数绑定使用 +* 改进聚合查询方法的`field`参数支持`Expression` + ## V5.1.29 LTS(2018-11-11) -该版本主要改进了参数绑定的解析性能,并修正了一些反馈的问题。 +该版本主要改进了参数绑定的解析问题和提升性能,并修正了一些反馈的问题。 * 改进手动参数绑定 * 修正MISS路由的分组参数无效问题 -- Gitee From 539d63360f986f75ae55f3416d798aa589d3b33e Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 23 Dec 2018 22:32:33 +0800 Subject: [PATCH 51/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7177f39..8bb0832 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +## V5.1.32 LTS(2018-12-24) + +本次主要为常规更新,修正了一些反馈的问题。 + + +* 改进多对多关联的`attach`方法 +* 改进聚合查询的`field`处理 +* 改进关联的`save`方法 +* 修正模型`exists`方法返回值 +* 改进时间字段写入和输出 +* 改进控制器中间件的调用 +* 改进路由变量替换的性能 +* 改进缓存标签的处理机制 + ## V5.1.31 LTS (2018-12-9) 本次版本包含一个安全更新,建议升级。 -- Gitee From 6d70c474ebb08027d94c3bfd9dd57eff57af81a6 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Wed, 30 Jan 2019 14:53:25 +0800 Subject: [PATCH 52/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bb0832..d43a701 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,30 @@ + +## V5.1.34 LTS(2019-1-30) + +本次更新为常规更新,修正了一些反馈的问题。 + +* 改进Request类的`has`方法,支持`patch` +* 改进`unique`验证的多条件支持 +* 修复自定义上传验证,检测文件大小 +* 改进`in`查询支持表达式 +* 改进路由的`getBind`方法 +* 改进验证类的错误信息获取 +* 改进`response`助手函数默认值 +* 修正mysql的`regexp`查询 +* 改进模型类型强制转换写入对`Expression`对象的支持 + +## V5.1.33 LTS(2019-1-16) + +* 修复路由中存在多个相同替换的正则BUG +* 修正whereLike查询 +* join方法支持参数绑定 +* 改进union方法 +* 修正多对多关联的attach方法 +* 改进验证类的正则规则自定义 +* 改进Request类method方法 +* 改进File日志类型的CLI日志写入 +* 改进文件日志time_format配置对JSON格式的支持 + ## V5.1.32 LTS(2018-12-24) 本次主要为常规更新,修正了一些反馈的问题。 -- Gitee From a878548249284814d69cd608eab8a43ff7b9e9a0 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 3 Mar 2019 08:52:49 +0800 Subject: [PATCH 53/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d43a701..185de12 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +## V5.1.35 LTS(2019-3-2) + +* 修正验证类自定义验证方法执行两次的问题 +* 模型增加`isEmpty`方法用于判断是否空模型 +* 改进获取器对`append`的支持 +* 修正一对多关联的`withCount`自关联问题 +* facade类注释调整 +* 改进关联属性的`visible`和`hidden`判断 +* 修正路由分组的`MISS`路由 +* 改进pgsql.sql ## V5.1.34 LTS(2019-1-30) -- Gitee From d7f851fe5b62e294a0a945aeff1dba78dbb667cc Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 3 Mar 2019 08:53:38 +0800 Subject: [PATCH 54/58] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 185de12..03ead42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ ## V5.1.35 LTS(2019-3-2) +本次主要为常规更新,修正了一些反馈的问题。 + * 修正验证类自定义验证方法执行两次的问题 * 模型增加`isEmpty`方法用于判断是否空模型 * 改进获取器对`append`的支持 -- Gitee From 1a4bd3d87fe298d761e79fee03bb786d8ef457a9 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 28 Apr 2019 18:43:31 +0800 Subject: [PATCH 55/58] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 03ead42..1ec1cf5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ +## V5.1.36 LTS(2019-4-28) + +本次更新为常规更新,主要更新如下: + +* 修正`chunk`方法一处异常抛出的错误 +* 修正模型输出的`visible` +* 改进环境变量加载 +* 改进命令行日志的`level`配置支持 +* 修复设置有缓存前缀时,无法清空缓存标签的问题 +* HasMony对象`saveAll`方法兼容`Collection`格式参数格式 +* 修正`whereOr`查询使用字符串的问题 +* 改进`dateFormat`设置对写入数据的影响 +* 修正查询缓存 +* 记住指定的跳转地址 +* 改进软删除 +* 改进聚合查询SQL去除limit 1 +* 改进缓存驱动 + ## V5.1.35 LTS(2019-3-2) 本次主要为常规更新,修正了一些反馈的问题。 -- Gitee From 246a11b6eb64ff59058afd6eb48bb8ec6a060f14 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Fri, 24 May 2019 12:05:16 +0800 Subject: [PATCH 56/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ec1cf5..cc5f48c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +## V5.1.37 LTS(2019-5-24) + +本次更新为常规更新,主要更新如下: + +* 改进关联数据更新 +* 修正关联动态获取器 +* 改进`redis`驱动 +* 修复验证规则里面出现二维数组时的错误 +* 改进跨域请求支持 +* 完善模型`hidden`方法对关联属性的支持 +* 改进`where`查询方法传入`Query`对象的支持`bind`数据 +* 改进数据集对象的`load`方法 +* 修正关联更新 + ## V5.1.36 LTS(2019-4-28) 本次更新为常规更新,主要更新如下: -- Gitee From d810ae5e68d9783d37581e6b39f93559a14714e4 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 26 May 2019 13:01:25 +0800 Subject: [PATCH 57/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc5f48c..3b20c48 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## V5.1.37 LTS(2019-5-24) +## V5.1.37 LTS(2019-5-26) 本次更新为常规更新,主要更新如下: @@ -10,7 +10,7 @@ * 完善模型`hidden`方法对关联属性的支持 * 改进`where`查询方法传入`Query`对象的支持`bind`数据 * 改进数据集对象的`load`方法 -* 修正关联更新 +* 修正缓存类`clear`方法对`tag`的支持 ## V5.1.36 LTS(2019-4-28) -- Gitee From 51c736597ca8979bc5cd5d5ff49f9c03155494ac Mon Sep 17 00:00:00 2001 From: thinkphp Date: Thu, 8 Aug 2019 12:27:07 +0800 Subject: [PATCH 58/58] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b20c48..cef0100 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,25 @@ +## V5.1.38 LTS(2019-8-8) + +本次更新为常规更新,主要包括: + +* `Request`类增加`isJson`方法 +* 改进浮点型查询 +* 修正关联查询关联外键为空的查询错误 +* 远程一对多支持关联统计和预载入查询 +* 远程一对多关联支持`has`/`hasWhere`查询 +* 优化`parseIn`解析 +* 改进`parseLike`查询 +* 改进Url生成 +* 改进模型的`toArray`方法 +* 修正`notIn`查询 +* 改进`JSON`字段查询 +* 改进Controller类`display`/`fetch`方法返回`ViewResponse`对象 +* 改进`param`方法 +* 改进`mysql`驱动`getExplain`方法 +* 改进时间查询 +* 改进模型关联的`has`/`hasWhere`方法对软删除的支持 +* 修正社区反馈的BUG + ## V5.1.37 LTS(2019-5-26) 本次更新为常规更新,主要更新如下: -- Gitee