ThinkPHP 3 2 版本公升級了哪些內容

2022-07-15 11:51:15 字數 1753 閱讀 9491

thinkphp 3.2發布了挺長時間了,這裡也總結下這次thinkphp 3.2到底發生了哪些變化,方便程式設計師們進行開發。

前言thinkphp 3.2 基於 thinkphp 3.1 的基礎上有許多的變化,我覺得這個版本應該設立為 thinkphp 4.0 而不是什麼 3.2。如果你在使用 thinkphp 3.1 請勿貿然遷移公升級,這可不是簡單的覆蓋下檔案就安然無恙的事情。

1. php 的版本

thinkphp 3.2 要求 php 5.3 以上的版本,而 thinkphp 3.1 只需要 php 5.2 就好了

2. 程式資料夾的修改

建議以後開發盡量不要做分組,要不然針對分組,有不少要處理的地方,這裡只是介紹未分組的情況,有做分組的朋友,請上官方文件尋找答案。

thinkphp 3.2 設定了乙個 home 目錄,很多檔案都將遷移到 home 目錄中。

**如下:

注意,因為 home 目錄的出現,你需要修改你的 .htaccess 檔案為

**如下:

options +followsymlinks

rewriteengine on

rewritecond % !-d

rewritecond % !-f

rewriterule ^(.*)$ index.php/home/$1 [qsa,pt,l]

否則,將會出現模組找不到的錯誤。

**如下:

'default_c_layer' => 'action', // 預設的控制器層名稱

'module_allow_list' => array('home','admin',...), // 配置你原來的分組列表

'default_module' => 'home', // 配置你原來的預設分組

4. 系統配置引數的變動

thinkphp 3.2 廢棄了以下系統配置引數

**如下:

修改了以下配置引數

**如下:

default_module => default_controller

5. 命名空間

**如下:

namespace home\action;

use think\action;

如果你的專案使用了控制器分層的話,需要對每個分層的類庫檔案新增類似的**,例如有定義event分層的話,需要在頭部新增:

**如下:

namespace home\event;

use think\action;

**如下:

namespace home\model;

use think\model;

**如下:

namespace home\service;

use think\model;

6. 方法調整

控制器類think\controller或者think\action的下列方法已經廢除:

廢除方法

替代方法

_get('id')

i('get.id')

_post('id')

i('post.id')

_put('id')

i('put.id')

_param('id')

i('id')

_request('id')

i('request.id')

_cookie('id')

i('cookie.id')

7. 常量調整

這樣就基本上完成了遷移,如果中間還有一些修改的話,請上官方文件尋找答案。

ThinkPHP 3 2 版本公升級了哪些內容

thinkphp 3.2發布了挺長時間了,這裡也總結下這次thinkphp 3.2到底發生了哪些變化,方便程式設計師們進行開發。前言thinkphp 3.2 基於 thinkphp 3.1 的基礎上有許多的變化,我覺得這個版本應該設立為 thinkphp 4.0 而不是什麼 3.2。如果你在使用 t...

ThinkPHP 3 2 版本公升級了哪些內容

前言 thinkphp 3.2 基於 thinkphp 3.1 的基礎上有許多的變化,我覺得這個版本應該設立為 thinkphp 4.0 而不是什麼 3.2程式設計客棧。如果你在使用 thinkphp 3.1 請勿貿然遷移公升級,這可不是簡單的覆蓋下檔案就安然無恙的事情vnyzwahx。1.php ...

ThinkPHP3 2版本安全更新

近日我們收到了乙個關於3.2版本的漏洞提醒,官方已經第一時間進行處理和更新。由於3.2版本已經過了官方的維護和安全更新週期,而且大量的開發者也進行了二次開發,因此不再發布新版,官方僅進行安全公告和修復建議。請還在使用3.2版本的使用者按照下面的方式進行安全修復 只需要修改一處核心內建公共函式 找到t...