Yiiをインストールした後、URL `https://hostname/basic/web/index.php` または `https://hostname/index.php` (設定によって異なります)からアクセスできる動作するYiiアプリケーションが作成されます。このセクションでは、アプリケーションの組み込み機能、コードの構成、およびアプリケーションが一般的にリクエストを処理する方法について説明します。
情報: この「はじめに」チュートリアルの簡潔さのため、Webサーバーのドキュメントルートとして`basic/web`を設定し、アプリケーションへのアクセスURLを`https://hostname/index.php`などに設定していることを前提としています。必要に応じて、説明にあるURLを適宜調整してください。
フレームワーク自体とは異なり、プロジェクトテンプレートのインストール後は、自由にコードを追加または削除し、必要に応じて全体的に変更できます。
インストールされた基本アプリケーションには、4つのページが含まれています。
これらのページは共通のヘッダーとフッターを共有しています。ヘッダーには、さまざまなページ間のナビゲーションを可能にするメインメニューバーが含まれています。
ブラウザウィンドウの下部にもツールバーが表示されます。これは、ログメッセージ、レスポンスステータス、実行されたデータベースクエリなど、多くのデバッグ情報を記録して表示するための、Yiiが提供する便利なデバッガーツールです。
Webアプリケーションに加えて、アプリケーションのベースディレクトリにある`yii`というコンソールスクリプトがあります。このスクリプトは、コンソールアプリケーションセクションで説明されているアプリケーションのバックグラウンドタスクとメンテナンスタスクを実行するために使用できます。
アプリケーションで最も重要なディレクトリとファイルは次のとおりです(アプリケーションのルートディレクトリが`basic`であると仮定)。
basic/ application base path
composer.json used by Composer, describes package information
config/ contains application and other configurations
console.php the console application configuration
web.php the Web application configuration
commands/ contains console command classes
controllers/ contains controller classes
models/ contains model classes
runtime/ contains files generated by Yii during runtime, such as logs and cache files
vendor/ contains the installed Composer packages, including the Yii framework itself
views/ contains view files
web/ application Web root, contains Web accessible files
assets/ contains published asset files (javascript and css) by Yii
index.php the entry (or bootstrap) script for the application
yii the Yii console command execution script
一般的に、アプリケーション内のファイルは、`basic/web`以下のファイルとそれ以外のディレクトリ以下のファイルの2種類に分類できます。前者はHTTP(つまりブラウザ)から直接アクセスできますが、後者はアクセスできず、アクセスすべきではありません。
Yii は、モデル・ビュー・コントローラー (MVC) アーキテクチャパターンを実装しており、上記のディレクトリ構成に反映されています。models
ディレクトリにはすべてのモデルクラス、views
ディレクトリにはすべてのビュースクリプト、controllers
ディレクトリにはすべてのコントローラークラスが含まれています。
次の図は、アプリケーションの静的構造を示しています。
各アプリケーションには、エントリスクリプトweb/index.php
があります。これはアプリケーション内で唯一Webからアクセス可能なPHPスクリプトです。エントリスクリプトは着信リクエストを受け取り、それを処理するためのアプリケーションインスタンスを作成します。アプリケーションは、そのコンポーネントの助けを借りてリクエストを解決し、リクエストをMVC要素にディスパッチします。ウィジェットはビューで使用され、複雑で動的なユーザーインターフェース要素を構築するのに役立ちます。
次の図は、アプリケーションがリクエストを処理する方法を示しています。
web/index.php
にリクエストを行います。タイプミスを発見したか、このページの改善が必要だと思いますか?
githubで編集する !
コメントするにはサインアップまたはログインしてください。