ThinkPHP 3.2 版本升級(jí)了哪些內(nèi)容
來(lái)源:易賢網(wǎng) 閱讀:643 次 日期:2015-03-09 15:56:30
溫馨提示:易賢網(wǎng)小編為您整理了“ThinkPHP 3.2 版本升級(jí)了哪些內(nèi)容”,方便廣大網(wǎng)友查閱!

ThinkPHP 3.2發(fā)布了挺長(zhǎng)時(shí)間了,這里也總結(jié)下這次ThinkPHP 3.2到底發(fā)生了哪些變化,方便程序員們進(jìn)行開(kāi)發(fā)。

前言

ThinkPHP 3.2 基于 ThinkPHP 3.1 的基礎(chǔ)上有許多的變化,我覺(jué)得這個(gè)版本應(yīng)該設(shè)立為 ThinkPHP 4.0 而不是什么 3.2。如果你在使用 ThinkPHP 3.1 請(qǐng)勿貿(mào)然遷移升級(jí),這可不是簡(jiǎn)單的覆蓋下文件就安然無(wú)恙的事情。

1. PHP 的版本

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

2. 程序文件夾的修改

ThinkPHP 3.2 使用 Application 作為程序文件夾,而 ThinkPHP 3.1 則是用 app 作為程序文件夾。

3. 不同分組設(shè)定的升級(jí)

建議以后開(kāi)發(fā)盡量不要做分組,要不然針對(duì)分組,有不少要處理的地方,這里只是介紹未分組的情況,有做分組的朋友,請(qǐng)上官方文檔尋找答案。

ThinkPHP 3.2 設(shè)置了一個(gè) Home 目錄,很多文件都將遷移到 Home 目錄中。

代碼如下:

App/Common/common.php => Application/Home/Common/function.php

App/Common/extend.php => Application/Home/Common/extend.php(假設(shè)存在定義的話)

App/Conf/Config.php => Application/Home/Conf/config.php

App/Lang/zh-cn/common.php => Application/Home/Lang/zh-cn.php(假設(shè)存在的話)

App/Lib/Action => Application/Home/Action

App/Lib/Model => Application/Home/Model

App/Tpl => Application/Home/View

注意,因?yàn)?Home 目錄的出現(xiàn),你需要修改你的 .htaccess 文件為

代碼如下:

<IfModule mod_rewrite.c>

Options +FollowSymlinks

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/home/$1 [QSA,PT,L]

</IfModule>

否則,將會(huì)出現(xiàn)模塊找不到的錯(cuò)誤。

新的目錄對(duì) Action 和 Tpl 進(jìn)行了重新命名,分別為 Controller 和 View,這樣更加直觀的體現(xiàn)了 MVC 的文件夾的部署方式。對(duì)于那些保留了 Action 的朋友,可以修改 Application/Common/config.php 中的信息:

代碼如下:

'DEFAULT_C_LAYER' => 'Action', // 默認(rèn)的控制器層名稱

'MODULE_ALLOW_LIST' => array('Home','Admin',...), // 配置你原來(lái)的分組列表

'DEFAULT_MODULE' => 'Home', // 配置你原來(lái)的默認(rèn)分組

4. 系統(tǒng)配置參數(shù)的變動(dòng)

ThinkPHP 3.2 廢棄了以下系統(tǒng)配置參數(shù)

代碼如下:

APP_GROUP_LIST

APP_GROUP_MODE

APP_AUTOLOAD_PATH

APP_TAGS_ON

APP_GROUP_PATH

DEFAULT_APP

DEFAULT_GROUP

VAR_GROUP

LOG_DEST

LOG_EXTRA

修改了以下配置參數(shù)

代碼如下:

DEFAULT_MODULE => DEFAULT_CONTROLLER

5. 命名空間

ThinkPHP 3.2 添加了命名空間,把項(xiàng)目的Application/Home/Action目錄下面的所有文件,頭部添加如下代碼(必須是除注釋以外的第一行):

代碼如下:

namespace Home\Action;

use Think\Action;

如果你的項(xiàng)目使用了控制器分層的話,需要對(duì)每個(gè)分層的類庫(kù)文件添加類似的代碼,例如有定義Event分層的話,需要在頭部添加:

代碼如下:

namespace Home\Event;

use Think\Action;

把項(xiàng)目的Application/Home/Model目錄下面的所有文件,頭部添加如下代碼(必須是除注釋以為的第一行):

代碼如下:

namespace Home\Model;

use Think\Model;

如果你的項(xiàng)目使用了模型分層的話,需要對(duì)每個(gè)分層的類庫(kù)文件添加類似的代碼,例如如果你有Service分層,需要在頭部添加:

代碼如下:

namespace Home\Service;

use Think\Model;

6. 方法調(diào)整

控制器類Think\Controller或者Think\Action的下列方法已經(jīng)廢除:

廢除方法替代方法

_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. 常量調(diào)整

下列常量已經(jīng)廢除:

APP_NAME // 3.2版本中無(wú)需再定義該常量

__GROUP__ // 3.2版本中可以用__MODULE__ 表示模塊的URL地址

GROUP_NAME //3.2版本中可以用 MODULE_NAME 獲取當(dāng)前模塊名

MODE_NAME // 3.2版本中模式擴(kuò)展已經(jīng)廢棄,參考下面的模式調(diào)整部分

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

以上就是本文所述關(guān)于ThinkPHP3.2發(fā)生的變化了,希望對(duì)大家能夠有所幫助。

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:ThinkPHP 3.2 版本升級(jí)了哪些內(nèi)容
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)