最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

yii2.0 组件是什么

来源:懂视网 责编:小采 时间:2020-11-03 18:23:59
文档

yii2.0 组件是什么

yii2.0 组件是什么:组件是 Yii 应用的主要基石。是 yii\base\Component 类或其子类的实例。 三个用以区分它和其它类的主要功能有:属性(Property) (推荐学习:yii框架)事件(Event)行为(Behavior)或单独使用,或彼此配合,这些功能的应用让 Yii 的类变得更加灵活和
推荐度:
导读yii2.0 组件是什么:组件是 Yii 应用的主要基石。是 yii\base\Component 类或其子类的实例。 三个用以区分它和其它类的主要功能有:属性(Property) (推荐学习:yii框架)事件(Event)行为(Behavior)或单独使用,或彼此配合,这些功能的应用让 Yii 的类变得更加灵活和

组件是 Yii 应用的主要基石。是 yiiaseComponent 类或其子类的实例。 三个用以区分它和其它类的主要功能有:

属性(Property) (推荐学习:yii框架)

事件(Event)

行为(Behavior)

或单独使用,或彼此配合,这些功能的应用让 Yii 的类变得更加灵活和易用。 以小部件 yiijuiDatePicker 来举例, 这是个方便你在 视图 中生成一个交互式日期选择器的 UI 组件:

use yiijuiDatePicker;

echo DatePicker::widget([
 'language' => 'zh-CN',
 'name' => 'country',
 'clientOptions' => [
 'dateFormat' => 'yy-mm-dd',
 ],
]);use yiijuiDatePicker;

echo DatePicker::widget([
 'language' => 'zh-CN',
 'name' => 'country',
 'clientOptions' => [
 'dateFormat' => 'yy-mm-dd',
 ],
]);

这个小部件继承自 yiiaseComponent,它的各项属性改写起来会很容易。

正是因为组件功能的强大,他们比常规的对象(Object)稍微重量级一点,因为他们要使用额外的内存和 CPU 时间来处理 事件 和 行为 。

如果你不需要这两项功能,可以继承 yiiaseObject 而不是 yiiaseComponent。这样组件可以像普通 PHP 对象一样高效, 同时还支持属性(Property)功能。

当继承 yiiaseComponent 或 yiiaseObject 时, 推荐你使用如下的编码风格:

若你需要重写构造方法(Constructor),传入 $config 作为构造器方法最后一个参数, 然后把它传递给父类的构造方法。

永远在你重写的构造方法结尾处调用一下父类的构造方法。

如果你重写了 yiiaseBaseObject::init() 方法,请确保你在 init 方法的开头处调用了父类的 init 方法。

<?php

namespace yiicomponentsMyClass;

use yiiaseBaseObject;

class MyClass extends BaseObject
{
 public $prop1;
 public $prop2;

 public function __construct($param1, $param2, $config = [])
 {
 // ... 在应用配置之前初始化

 parent::__construct($config);
 }

 public function init()
 {
 parent::init();

 // ... 应用配置后进行初始化
 }
}

另外,为了让组件可以在创建实例时能被正确配置,请遵照以下操作流程:

$component = new MyClass(1, 2, ['prop1' => 3, 'prop2' => 4]);
// 方法二:
$component = Yii::createObject([
 'class' => MyClass::className(),
 'prop1' => 3,
 'prop2' => 4,
], [1, 2])

文档

yii2.0 组件是什么

yii2.0 组件是什么:组件是 Yii 应用的主要基石。是 yii\base\Component 类或其子类的实例。 三个用以区分它和其它类的主要功能有:属性(Property) (推荐学习:yii框架)事件(Event)行为(Behavior)或单独使用,或彼此配合,这些功能的应用让 Yii 的类变得更加灵活和
推荐度:
标签: 2.0 组件 Yii
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top