Yii
来源:互联网 发布:数据库高并发处理 编辑:程序博客网 时间:2024/05/16 05:27
在项目根目录下面我们创建目录 modules 来存放模块(当然如果不喜欢的话可以随意取名)。
TestModule 自定TestModule 模块
位置 app\modules\TestModule
模块目录接口
--components 自定义组件存放目录--controllers 控制器目录--config 应用配置目录--web 能让客户端直接访问的目录--modules 模块存放目录 --TestModules 自定义TestModule 模块 -- TestModule.php 模块文件 -- controllers 模块控制器文件存放目录 -- IndexController.php IndexController 控制器 -- models 模块模型存放目录 -- views 模块模版文件存放目录 -- index IndexController 控制器模版文件所在目录 -- demo-view.php 模版文件 demo-view.php--models 模型目录
模块入口文件 TestModule.php
<?php namespace app\modules\TestModule; use yii\base\Module; // 所有的模块都必须继承yii Module 类 class TestModule extends Module { //待会儿在配置文件中会讲解这里 public $testName; public $testAge; public function init() { //指定该目录控制器的所在命名空间 $this->controllerNamespace = 'app\modules\TestModule\controllers'; } }?>
模块TestModule controllers IndexController.php
namespace app\modules\TestModule\controller;use Yii;use yii\web\Controller; //要想被访问 得继承yii web Controllerclass IndexController extends Controller{ public function actionIndex() { echo Yii::$app->controller->module->testName; echo Yii::$app->controller->module->testAge; } public function actionDemoView() { $model = array( 'name' => Yii::$app->controller->module->testName; 'age' => Yii::$app->controller->module->testAge; ); return $this->render('demo-view',$model); }}
demo-view.php
<?php use yii\helpers\Html;?><?php echo Html::encode($name);?><br /><?php echo Html::encode($age);?>
做到这一步后我们一个简单的模块就做好了。 现在要把该模块注册进应用主体,使客户端能够访问。
config/web.php
<?php [ 'modules' => [ 'TestModule' => [ 'class' => 'app\modules\TestModule\TestModule', //指向模块入口文件 'testName'=>'谭勇', //对模块入口类的属性注入 'testAge' => 22 //对模块入口类的属性注入 ] ] ]?>
然后我们在浏览器上输入
http://host/index.php?r=TestModule/index/indexhttp://host/index.php?r=TestModule/index/demo-view访问试试
阅读全文
0 0