エントリ スクリプトは、アプリケーション起動プロセスの最初のステップです。アプリケーション (Web アプリケーションまたはコンソール アプリケーション) には、エントリ スクリプトが 1 つだけあります。エンドユーザーのリクエストは、エントリ スクリプトを通じてアプリケーションをインスタンス化し、リクエストをアプリケーションに転送します。
Web アプリケーションのエントリ スクリプトは、エンド ユーザーがアクセスできるディレクトリに配置する必要があり、通常は、index.php という名前が付けられます。 Web サーバーを使用して他の名前をターゲットにすることもできます。
コンソール アプリケーションのエントリ スクリプトは、通常、アプリケーションのルート ディレクトリに yii (接尾辞 .php) という名前が付けられています。このファイルには、ユーザーがコマンド ./yii
エントリ スクリプトは主に次の作業を完了します:
グローバル定数の定義;
Composer オートローダーを登録;
Yii クラス ファイルが含まれています;
アプリケーション設定をロード;
アプリケーション インスタンスを作成して設定します;
yii を呼び出します\base\Application::run() を使用してリクエストを処理します。
Web アプリケーション
基本的なアプリケーション テンプレート エントリ スクリプトのコードは次のとおりです:
<?php defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('YII_ENV', 'dev'); // 注册 Composer 自动加载器 require __DIR__ . '/../vendor/autoload.php'; // 包含 Yii 类文件 require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php'; // 加载应用配置 $config = require __DIR__ . '/../config/web.php'; // 创建、配置、运行一个应用 (new yii\web\Application($config))->run();
コンソールApplication
次は、コンソール アプリケーションのエントリ スクリプトです: #
#!/usr/bin/env php <?php /** * Yii console bootstrap file. * * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */ defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('YII_ENV', 'dev'); // 注册 Composer 自动加载器 require __DIR__ . '/vendor/autoload.php'; // 包含 Yii 类文件 require __DIR__ . '/vendor/yiisoft/yii2/Yii.php'; // 加载应用配置 $config = require __DIR__ . '/config/console.php'; $application = new yii\console\Application($config); $exitCode = $application->run(); exit($exitCode);
定数の定義
Entry script グローバル定数を定義するのに最適な場所です Yii は次の 3 つの定数をサポートします:
YII_DEBUG: アプリケーションがデバッグ モードで実行されているかどうかを識別します。デバッグ モードでは、アプリケーションはより多くのログ情報を保持し、例外がスローされた場合は、詳細なエラー コール スタックが表示されます。したがって、デバッグ モードは主に開発段階での使用に適しており、YII_DEBUG のデフォルト値は false です。 YII_ENV: アプリケーションが実行される環境を識別します。詳細については、構成の章を参照してください。 YII_ENV のデフォルト値は「prod」です。これは、アプリケーションがオンラインの実稼働環境で実行されることを意味します。 YII_ENABLE_ERROR_HANDLER: Yii が提供するエラー処理を有効にするかどうかを指定します。デフォルトは true です。 定数を定義する場合、通常は次のようなコードを使用して定義します:defined('YII_DEBUG') or define('YII_DEBUG', true);
上記のコードは次と同等です:
if (!defined('YII_DEBUG')) { define('YII_DEBUG', true); }
以上がyii フレームワーク エントリ スクリプトは何に役立ちますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。