Yiiのエントリスクリプトとは

Yiiのエントリスクリプトとは何でしょうか。公式サイトによると『エントリスクリプトは、ユーザリクエストを最初に受け付けるブートストラップ(立ち上げ)PHPスクリプトです。 これはエンドユーザが直接実行を要求することが出来る唯一のPHPスクリプトです。』とありました。

つまり、デフォルトでは、『WebRoot/index.php』の中に記述されているものと解釈すればいいのでしょうか。これ以外のフォルダやファイルは『WebRoot/protected』フォルダ内に保存され、基本的に直接アクセスできないように、『.htaccess』ファイルで制限されています。

このエントリスクリプトでは、yii.phpファイルを読み込み、指定された初期構成でアプリケーションインスタンスを実行しています。

インスタンス化とは、オブジェクト指向のプログラミングにおいて、インスタンス(クラスを基にした実際の値としてのデータ)を生成することである。通常、インスタンスはクラスと対比して使用される。例えば「名前、身長、体重」というクラスがあるとすれば、そのインスタンスは「佐藤、170、60」というよう風にして作られる。一つのクラスから複数のインスタンスを作ることができ、それぞれのインスタンスは違った値を持つことができる。また、プログラムの中で実際に扱われるのはクラスではなく、こうして作られたインスタンスの方である。 プログラミングの現場では、クラスを定義したあとで変数などの実体を用意するが、こうした処理がインスタンス化と呼ばれる。(IT用語辞典BINARYより)

これもデモサイトの『helloworld』フォルダのindex.phpファイルで検証してみます。

<?php

// include Yii bootstrap file
require_once(dirname(__FILE__).'/../../framework/yii.php');

// create a Web application instance and run
Yii::createWebApplication()->run();

require_onceで、yii.phpファイルを読み込み、『Yii::createWebApplication()->run()』でインスタンス化しています。

このyii.phpに直接アクセスできるように、レンタルサーバーのファイアバードでincludeパスを通しておきたいと思います。

『サーバー管理ツール』→『PHP環境設定』→対象のドメイン名を選択して『選択』ボタンをクリック→『php.ini直接編集』をクリックし、php.ini設定内容の最後の方に、下記コードを追加します。

include_path=".:/ドキュメントルート/y.winroad.info/yii/framework"

尚、ドキュメントルートはサーバー基本情報に記載されています。

それでは、『demos/helloworld』フォルダのindex.phpを下記のように変更します。

<?php

// include Yii bootstrap file
require_once('yii.php');

// create a Web application instance and run
Yii::createWebApplication()->run();

それでは、ブラウザで『helloworld』が表示されるか確認してみます。

http://y.winroad.info/yii/demos/helloworld

手探り状態でYiiの検証をしていますので、間違いがあるかもしれませんが、指摘していただければ幸いです。本日は以上です。

このエントリーを含むはてなブックマーク Buzzurlにブックマーク livedoorクリップ Yahoo!ブックマークに登録

2011年11月19日 | コメント/トラックバック(0) | トラックバックURL |

カテゴリー:Yii

トラックバック&コメント

この投稿のトラックバックURL:

コメントをどうぞ

このページの先頭へ