yii2.0自定义组件

组件包括 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

<?php
	namespace 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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值