ThinkPHP 3.2バージョンはどのような内容にアップグレードされましたか?
前言
ThinkPHP 3.2はThinkPHP 3.1に基づいて多くの変化があります。このバージョンは3.2ではなくThinkPHP 4.0に設定するべきだと思います。もしThinkPHP 3.1を使っていたら、むやみに進級しないでください。これは簡単にファイルを上書きしても大丈夫です。
1.PHPのバージョン
ThinkPHP 3.2はPHP 5.3以上のバージョンを要求しますが、ThinkPHP 3.1はPHP 5.2だけが必要です。
2.プログラムフォルダの変更
ThinkPHP 3.2はアプリをプログラムフォルダとして使用しますが、ThinkPHP 3.1はアプリをプログラムフォルダとして使用します。
3.異なるグループ設定のアップグレード
今後はグループにしないように開発してください。グループに対して処理するところが多いです。ここではグループに入っていない状況を紹介します。グループに入る友達がいます。公式文書で答えを探してください。
ThinkPHP 3.2はホームディレクトリを設置しています。多くのファイルはホームディレクトリに移動します。
新しいディレクトリは、アクションとTplの名前を変えて、それぞれControllerとViewというように、MVCのフォルダの配置方式をより直感的に表現しています。アクションを保持している友達に対して、アプリ/Common/config.phpの情報を修正できます。
4.システム配置パラメータの変動
ThinkPHP 3.2は以下のシステム設定パラメータを廃棄しました。
5.名前空間
ThinkPHP 3.2名前空間を追加し、プロジェクトのAppliation/Home/アクションディレクトリの下にある全てのファイルに、下記のコードを追加しました。
6.方法調整
コントローラ類Think\ControllerまたはThink\アクションの次の方法は廃止されました。
方法を廃止する
代替方法
_。get('id')
I('get.id')
_。post('id')
I('post.id')
_。put('id')
I(''put.id')
_。param('id')
I('id')
_。request('id')
I('request.id')
_。クッキー('id')
I('cookie.id')
7.定数調整
下記の定数は廃止されました。
APP_.NAME//3.2バージョンでこの定数を再定義する必要はありません。
同前GROUT_//3.2バージョンの中で___u uを使用することができます。MODULE_u uモジュールのURLアドレスを表示します。
GROUT_NAME//3.2バージョンはMODULE_を使用できます。NAMEは現在のモジュール名を取得します。
MODE_NAME // 3.2バージョンではモード拡張が破棄されています。以下のモード調整部分を参照してください。
このように基本的に移転が完了しました。中に何か修正があれば、公式文書に答えを探してください。
以上がこの記事で述べたThinkPHP 302の変化についてですが、皆様のご協力をお願いします。
ThinkPHP 3.2はThinkPHP 3.1に基づいて多くの変化があります。このバージョンは3.2ではなくThinkPHP 4.0に設定するべきだと思います。もしThinkPHP 3.1を使っていたら、むやみに進級しないでください。これは簡単にファイルを上書きしても大丈夫です。
1.PHPのバージョン
ThinkPHP 3.2はPHP 5.3以上のバージョンを要求しますが、ThinkPHP 3.1はPHP 5.2だけが必要です。
2.プログラムフォルダの変更
ThinkPHP 3.2はアプリをプログラムフォルダとして使用しますが、ThinkPHP 3.1はアプリをプログラムフォルダとして使用します。
3.異なるグループ設定のアップグレード
今後はグループにしないように開発してください。グループに対して処理するところが多いです。ここではグループに入っていない状況を紹介します。グループに入る友達がいます。公式文書で答えを探してください。
ThinkPHP 3.2はホームディレクトリを設置しています。多くのファイルはホームディレクトリに移動します。
App/Common/common.php => Application/Home/Common/function.php
App/Common/extend.php => Application/Home/Common/extend.php( )
App/Conf/Config.php => Application/Home/Conf/config.php
App/Lang/zh-cn/common.php => Application/Home/Lang/zh-cn.php( )
App/Lib/Action => Application/Home/Action
App/Lib/Model => Application/Home/Model
App/Tpl => Application/Home/View
ホームディレクトリの出現により、あなたのhttaccessファイルを修正したいです。
<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>
モジュールが見つけられないエラーが発生します。新しいディレクトリは、アクションとTplの名前を変えて、それぞれControllerとViewというように、MVCのフォルダの配置方式をより直感的に表現しています。アクションを保持している友達に対して、アプリ/Common/config.phpの情報を修正できます。
'DEFAULT_C_LAYER' => 'Action', //
'MODULE_ALLOW_LIST' => array('Home','Admin',...), //
'DEFAULT_MODULE' => 'Home', //
4.システム配置パラメータの変動
ThinkPHP 3.2は以下のシステム設定パラメータを廃棄しました。
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
以下の設定パラメータを変更しました。
DEFAULT_MODULE => DEFAULT_CONTROLLER
5.名前空間
ThinkPHP 3.2名前空間を追加し、プロジェクトのAppliation/Home/アクションディレクトリの下にある全てのファイルに、下記のコードを追加しました。
namespace Home\Action;
use Think\Action;
あなたのプロジェクトがコントローラ階層を使用している場合、同じコードを各階層のライブラリファイルに追加する必要があります。例えば、Event階層を定義すると、ヘッダに追加する必要があります。
namespace Home\Event;
use Think\Action;
プロジェクトのApplication/Home/Modelディレクトリの下にあるすべてのファイルに、以下のコードを追加します。
namespace Home\Model;
use Think\Model;
あなたのプロジェクトがモデル階層を使用する場合は、各階層のライブラリファイルに同様のコードを追加する必要があります。例えば、Service階層がある場合は、ヘッダに追加する必要があります。
namespace Home\Service;
use Think\Model;
6.方法調整
コントローラ類Think\ControllerまたはThink\アクションの次の方法は廃止されました。
方法を廃止する
代替方法
_。get('id')
I('get.id')
_。post('id')
I('post.id')
_。put('id')
I(''put.id')
_。param('id')
I('id')
_。request('id')
I('request.id')
_。クッキー('id')
I('cookie.id')
7.定数調整
下記の定数は廃止されました。
APP_.NAME//3.2バージョンでこの定数を再定義する必要はありません。
同前GROUT_//3.2バージョンの中で___u uを使用することができます。MODULE_u uモジュールのURLアドレスを表示します。
GROUT_NAME//3.2バージョンはMODULE_を使用できます。NAMEは現在のモジュール名を取得します。
MODE_NAME // 3.2バージョンではモード拡張が破棄されています。以下のモード調整部分を参照してください。
このように基本的に移転が完了しました。中に何か修正があれば、公式文書に答えを探してください。
以上がこの記事で述べたThinkPHP 302の変化についてですが、皆様のご協力をお願いします。