ホームページ  >  記事  >  PHPフレームワーク  >  TP6 のマルチアプリケーションと TP5 の違いを分析する

TP6 のマルチアプリケーションと TP5 の違いを分析する

藏色散人
藏色散人転載
2021-11-12 14:42:294281ブラウズ

次のthinkphp フレームワークチュートリアル コラムでは、TP6 のマルチアプリケーションと TP5 の違いを説明および分析します。

ThinkPHP6 と ThinkPHP5 で追加された新しい「マルチアプリケーション」の違いは何ですか?

まずは公式でマルチアプリケーションのディレクトリ構造を見てください。 ThinkPHP6 マニュアル:

├─app 应用目录
│  ├─index              主应用
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录(优先)
│  │  └─ ...            更多类库目录
│  ├─admin              后台应用
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录(优先)
│  │  └─ ...            更多类库目录
│
├─public                WEB目录(对外访问目录)
│  ├─admin.php          后台入口文件
│  ├─index.php          入口文件
│  ├─router.php         快速测试文件
│  └─.htaccess          用于apache的重写
│
├─config                应用配置目录
│  ├─index              index应用配置
│  └─admin              admin应用配置
│
├─view                视图目录
│  ├─index              index应用视图目录
│  └─admin              admin应用视图目录
│
├─route                 路由定义目录
│  ├─index              index应用路由定义目录
│  └─admin              admin应用路由定义目录
│
├─runtime               运行时目录
│  ├─index              index应用运行时目录
│  └─admin              admin应用运行时目录

このように、ThinkPHP6 のマルチアプリケーションとは、フロントエンドのインデックスアプリケーションとバックエンドの管理アプリケーションがあり、これをマルチアプリケーションと呼びます。当時、ThinkPHP5 を使用していたときに、フロントエンド アプリケーション インデックスとバックエンド アプリケーション管理も開発しました。その違いは何ですか?

違い 1: 使用する前に、composer を通じてダウンロードする必要があります。

ThinkPHP6 フレームワークは、デフォルトでダウンロードすると単一のアプリケーションになります。複数のアプリケーションを使用したい場合は、ダウンロードする必要があります:

composer require topthink/think-multi-app

違い 2: ルーティング定義は次のようにする必要があります。現在のアプリケーションの下で。

ThinkPHP5 ではルート ファイルをルート ディレクトリに定義できることはわかっていますが、ThinkPHP6 以降では、ルートはアプリケーション ディレクトリに定義する必要があります。

違い 3: ThinkPHP6 はアプリケーションのエントリをサポートしています。

ThinkPHP6 では、アプリケーションごとに別のエントリ ファイルを設定できます。たとえば、管理アプリケーションの場合、それにアクセスするために admin.php エントリ ファイルを設定できます。

違い 4: ドメイン名バインディング アプリケーション。

たとえば、ThinkPHP5 では、www.a.com/index/index... のルートを定義すると、www.a.com/company.htm...# の効果を実現できます。

##しかし、PHP6 について考えると、ルーティングをどのように設定しても、インデックス アプリケーションは削除できないことがわかります。常に www.a.com/index/compa... これを修正するにはどうすればよいですか? ?

その後、解決策はドメイン名バインディング アプリケーションを使用することです。次のように、config/app.php 構成ファイルでドメイン名とアプリケーションのバインドを定義します。このようにして、www.a.com/company.htm… を使用してアクセスできるようになります。

最後に:

一般的に、ThinkPHP6 のマルチアプリケーションは ThinkPHP5 に比べて依然として大幅に改善されていますが、初めて使用する場合は少し面倒です。また、composer のダウンロードが必要ですが、これは ThinkPHP6 マルチアプリケーションに対する有利な影響には影響しません。

推奨: 「

最新の 10 件の thinkphp ビデオ チュートリアル

以上がTP6 のマルチアプリケーションと TP5 の違いを分析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjuejin.imで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。