ホームページ >PHPフレームワーク >ThinkPHP >thinkphp5 と thinkphp3 の違い
#thinkphp5 と thinkphp3 の違い
公式は、5 を使用するために 3 の思考を使用しないでくださいと言いました。言い換えれば、これら 2 つはバージョンの反復とは無関係な公式製品です。ディレクトリ構成が異なり、一部の関数名が異なります。従来の MVC Web サイトの場合は、tp3.2 を使用します。インターフェイスを作成する場合は、tp5 を使用します。前後の主な違いはビューの処理です。モデルのインスタンス化
TP5 は、モデルを自動的にインスタンス化する M メソッドをキャンセルし、新しいインスタンス化モデル メソッドを使用します。自動インスタンス化を使用しない場合は、新しいモデル クラスを自分で作成し、それを自分でインスタンス化する必要があります。これは D メソッドに似ています。 D メソッドと同様の機能を持つモデル メソッドがあり、機能を完全に置き換えることができます。U メソッド
U メソッドは、組み込みのTP でルートを生成するメソッドです。このメソッドは、URL メソッドで完全に置き換えることができます。IS_GET メソッドと IS_POST メソッドは TP5
でキャンセルされました。引き続き使用したい場合は、次のようにプロジェクト内でカスタマイズできます。 :define('IS_GET',Request::instance()->isGet()); define('IS_POST', Request::instance()->isPost());
元の TP の I メソッド
以前の TP には、受信するための I メソッドがありました現在、代わりに input メソッドを使用できます新しいメソッドであることに注意してください
#現在の 1 つの新しいメソッドが save メソッドに変更されました. こちらは前回の更新方法であり、更新方法も異なりますので注意が必要です。新しい追加の場合は直接 save を使用できますが、更新の場合は isUpdate(true)model("")->isUpdate(true)->save($data);を追加する必要があります。TP5 と TP のオリジナル バージョンの最大の機能の違いはリターンです。現在、ほぼすべてのデータベース クエリが実行可能です。オブジェクトを返します
$menuurl->find($menu_id);//此方法返回一个对象,可以使用->toArray()方法转换为数组 $this->where($condition)->order($order)->select();//此方法返回一个对象数组,所以要使用数据也必须转换,当然可以直接用对象
C メソッドは config メソッドに置き換えられます
データベース設定は、database.php のみにあります。パラメータを取得したい場合は、次を使用します。config('database.prefix')現在ページにはカスタム定数があります。方法、設定方法は以前のバージョンと同様です グローバルに置き換える必要がある場合は、設定ファイルに直接追加できます:
'view_replace_str' => [ '__PUBLIC__'=>'/public/', '__ROOT__' => '/', ]または定数構成を直接使用します
{$Think.config.PUBLIC}Default エンジン タグは変更できます。つまり、以前の a8093152e673feb7aba1828c43532094 は引き続き使用できます
// 模板引擎普通标签开始标记 'tpl_begin' => '{', // 模板引擎普通标签结束标记 'tpl_end' => '}', // 标签库标签开始标记 'taglib_begin' => '{', // 标签库标签结束标记 'taglib_end' => '}',これこの記事は、ThinkPHP フレームワークの技術記事列からのものです:
http://www.php.cn/phpkj/thinkphp/
以上がthinkphp5 と thinkphp3 の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。