yiiフレームワークのエントリーファイルとは何ですか

王林
リリース: 2020-03-11 14:05:17
オリジナル
2926 人が閲覧しました

yiiフレームワークのエントリーファイルとは何ですか

yii フレームワークのエントリ ファイルは、web ディレクトリの下にあるindex.php です。

エントリ ファイルの内容は次のとおりです:

<?php
defined(&#39;YII_DEBUG&#39;) or define(&#39;YII_DEBUG&#39;, true);
defined(&#39;YII_ENV&#39;) or define(&#39;YII_ENV&#39;, &#39;dev&#39;);
 
require(__DIR__ . &#39;/../../vendor/autoload.php&#39;);
require(__DIR__ . &#39;/../../vendor/yiisoft/yii2/Yii.php&#39;);
require(__DIR__ . &#39;/../../common/config/bootstrap.php&#39;);
require(__DIR__ . &#39;/../config/bootstrap.php&#39;);
 
$config = yii\helpers\ArrayHelper::merge(
    require(__DIR__ . &#39;/../../common/config/main.php&#39;),
    require(__DIR__ . &#39;/../../common/config/main-local.php&#39;),
    require(__DIR__ . &#39;/../config/main.php&#39;),
    require(__DIR__ . &#39;/../config/main-local.php&#39;)
);
 
$application = new yii\web\Application($config);
$application->run();
ログイン後にコピー

エントリ ファイルのコードを理解する方法:

最初の 2 行は 2 つの定義ステートメント::define(' YII_DEBUG') またはdefine(' YII_DEBUG', true);defined('YII_ENV') またはdefine('YII_ENV', 'dev');

現在の実行モードと環境を定義します。 YII_DEBUG が定義されている場合、現在の状態がデバッグ中であることを意味し、アプリケーションの実行中にいくつかのデバッグ情報が出力されます。例外がスローされると、詳細なコールスタックも表示されます。デフォルトでは、 YII_DEBUG は false です。ただし、開発プロセス中は、エラーの発見と分析を容易にするために、上で説明したようにこれを true として定義することが最善です。

YII_ENV が定義されている場合は、現在のアプリケーションの実行環境を指定します。上記のコードは、アプリケーションが開発環境で実行されることを示しています。デフォルトでは、YII_ENV は運用環境を表す prod です。

これらの環境は単なる名前であり、具体的な意味と環境の内容は環境の定義によって異なります。 dev prod は Yii インストール後の 2 つのデフォルト環境で、それぞれ開発環境と最終製品環境を表します。テスト環境を表すテスト環境もあります。

環境とモードでは機能が異なります。環境は主にコード内の構成ファイルに影響を与えます。 YII_ENV の dev prod test の 3 つの環境は、それぞれ YII_ENV_DEV YII_ENV_PRODYII_ENV_TEST の値を true にします。このようにして、アプリケーション構成、特に同じ構成ファイル内で、環境ごとに異なる構成を作成できます。

関連チュートリアルの推奨事項: yii フレームワーク

以上がyiiフレームワークのエントリーファイルとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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