ホームページ > PHPフレームワーク > ThinkPHP > ThinkPHP6 の新しい「複数のアプリケーション」と ThinkPHP5 の違いは何ですか?

ThinkPHP6 の新しい「複数のアプリケーション」と ThinkPHP5 の違いは何ですか?

王雪芹
リリース: 2020-04-30 10:48:17
オリジナル
2983 人が閲覧しました

ThinkPHP6 では、「マルチアプリケーション」という新しい用語が追加されました。これは ThinkPHP5 では使用できませんが、これは何をするのでしょうか? PHP 中国語 Web サイトの寄稿者である Wang Xueqin のおしゃべりを聞いてください...

まず、複数のアプリケーションのディレクトリ構造についての公式 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.0 高速開発マニュアル (事例編))

ああ、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/company.html のルートを定義した後、この効果 www.a.com/company.html# を実現できます。

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

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

最後に:

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

1.

thinkphp 技術記事

2. thinkphp ビデオ チュートリアル

以上がThinkPHP6 の新しい「複数のアプリケーション」と ThinkPHP5 の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート