Yii Framework は、大規模な Web アプリケーションを開発するためのコンポーネントベースの高性能 PHP フレームワークです。 Yii は、今日の Web 2.0 アプリケーション開発に必要なほとんどすべてを提供します。 Yii は、最も効率的な PHP フレームワークの 1 つです。 Yii は創設者 Xue Qiang の発案で、2008 年 1 月 1 日に開発が開始されました。
yii によって生成された Web アプリに従って開発された場合は、少し大きなプロジェクト。すべてのコントローラーはコントローラー フォルダーの下に配置され、すべてのモデルはモデル フォルダーの下に配置されます。n 個のコントローラーと n 個の複数のモデルがある場合、この場合のコードの保守は非常に面倒なプロセスになります。この状況を回避するために、Yii はモジュールのディレクトリ構造を提供します。
モジュール (モジュール) は、ビュー、コントローラー、その他のコンポーネントを含む独立したユニットです。アプリケーションとの違いは、モジュールをアプリケーションのモジュール ディレクトリに個別に格納できないことです。
プロジェクトは n 個のモジュールに分割でき、各モジュールには独自のコントローラーとモデルがあります。このような組織構造により、開発と管理がより便利かつ簡潔になります。
YII のモジュールは非常に柔軟であり、モジュールにはサブモジュールを含めることができます。理論上、モジュールは無限にネストできます。
モジュールのディレクトリ構造(以下に生成されるディレクトリ構造を説明として使用します)
modules モジュールの格納ディレクトリ
└── admin はモジュールの名前に対応します。 、ユニークです。ルーティングの moduleid でもあります
§── コンポーネント モジュールで使用されるコンポーネント
§── コントローラーにはコントローラーが含まれます
│ └── DefaultController.php デフォルトのコントローラー
§── メッセージ 国際化
§── モデル モデル クラス ファイル
§── AdminModule.php モジュールクラスファイル
└── views ビューファイル
§──default デフォルトビュー
│ §──index.php ビューファイル
└──layouts にはレイアウトファイルが含まれています
基本的なディレクトリ構造は以下の通りです, もちろん、自分でカスタムを追加することもできます。
<?php ...... 'modules'=>array( 'gii'=>array( 'class'=>'system.gii.GiiModule', 'password'=>'123456',//你的密码访问时需要输入 'ipFilters'=>array('127.0.0.1','::1'), ), ),
'modules'=>array( 'gii'=>array( 'class'=>'system.gii.GiiModule', 'password'=>'你的密码', ), 'admin', ),
class AdminModule extends CWebModule{ private$_assetsUrl; $this->_assetsUrl=Yii::app()->getAssetManager()->publish(Yii::getPathOfAlias('application.modules.admin.assets')); return$this->_assetsUrl; } public function setAssetsUrl($value){ $this->_assetsUrl=$value; } }
然后,在 /protected/modules/admin/views/layouts/main.php 中使用 $this->module->assetsUrl 就可以调用你的css等文件了。模板文件的代码如下:
<link rel="stylesheet" type="text/css" href="<?php echo $this->module->assetsUrl; ?>/css/screen.css" />
4,通过如上操作,该模块只要把admin目录拷贝,就可以多次复用了。
模块的配置,使用方法
在配置文件 /config/main.php 中:
配置文件中也可以及添加对模块中属性初始化的参数例如:
'modules'=>array('admin'=>array('web_url'=>'www.phpernote.com'),
对应在 Controller 中的访问方式是:
Yii::app()->controller->module->web_url;
作为程序员,我们要知道,Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎一切功能。事实上,Yii是最有效率的PHP框架之一。
希望本节内容能让大家在Yii框架上有更多的收获。
相关推荐:
以上がYiiフレームワークフレームワークモジュールの開発の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。