yii2.0自定义组件

来源:互联网 发布:淘宝喵喵折怎么设置 编辑:程序博客网 时间:2024/06/11 15:27

组件包括 DB

  session

  cookie 

  cache

  log

  DI (依赖注入)

  GII


组件在config\web.php中的components中配置,这里已经存在的组件是YII2.0的核心组件,在application运行的时候就已经加载好了,可以再vendor\yiisoft\yii2\base\Application.php中的coreComponents()方法中

public function coreComponents()//内核的组件{    return [        'log' => ['class' => 'yii\log\Dispatcher'],        'view' => ['class' => 'yii\web\View'],        'formatter' => ['class' => 'yii\i18n\Formatter'],        'i18n' => ['class' => 'yii\i18n\I18N'],        'mailer' => ['class' => 'yii\swiftmailer\Mailer'],        'urlManager' => ['class' => 'yii\web\UrlManager'],        'assetManager' => ['class' => 'yii\web\AssetManager'],        'security' => ['class' => 'yii\base\Security'],    ];}
创建一个自己的组件

在basic下创建文件夹component并创建1个php文件 Arrey.php 制作一个简单的功能

<?php//这里的componnet是文件夹的名字,//文件夹名是components那么命名空间就是app\components//文件夹名是hello那么命名空间就是app\hello namespace  app\components;  class Arrey{      public function unique($data){         return array_unique($data);      }  }
然后在config/web.php中的components中添加配置

   

在controllers文件夹下创建控制器DataController.php

<?phpnamespace app\controllers;use     yii\web\Controller;
class DataController extends Controller{     
public function actionTest(){
        $data=[2,2,3,4,5,5,5,6,7,2,1,];        echo"<pre>";        //arr是组件名字,unique是这个组件下的unique方法        echo json_encode(\Yii::$app->arr->unique($data))  ;        //把arr组件的属性打印出来        echo \Yii::$app->arr->name;    }}


0 0
原创粉丝点击