在phpYII框架使用行为行为的方法详细的解决方案
1:步骤定义绑定行为类。
类扩展Yii 组件基础
{
空
}
步 / 2:定义了一种行为,他将MyClass
类mybehavior扩展Yii 行为基础
{
一个属性行为
公共属性=这是美元的财产在MyBehavior。;
一种行为方法
公共函数方法()
{
return'method MyBehavior叫。;
}
}
$ myClass =新MyClass();
mybehavior美元=新MyBehavior();
步骤3:将绑定到行为/类
$ MyClass -> attachbehavior('mybehavior,mybehavior美元);
步骤4:访问属性和行为方法,并访问它们自己的属性和方法的类。
echo MyClass ->属性;
echo MyClass ->方法();
你不需要理解上面所有的代码。虽然您可能已经用脚趾猜测了这些代码的含义,但您只需要记住,行为中的属性和方法可以通过绑定类直接访问,比如它自己的属性和方法。可以直接访问。在代码中,我不是美元的属性成员(方法)。这些都是mybehavior.however美元的成员,通过attachbehavior()将绑定到$ mycalss对象的行为,就像练吸星大法,工作业绩Dafa,有钱有势,属性和其他人成为他们自己。
此外,从上面的代码中,您必须掌握使用行为的一般过程:
派生自己的类从Yii 基础组件以使用行为;
获得你自己的行为类Yii 行为基础,它定义了属性和方法参与行为;
绑定组件和行为;
与使用组件本身的属性和方法一样,使用行为中定义的属性和方法。
使用行为,你必须将它添加到Yii 基础组件类或其子类在以前的文章。一旦行为附加组件,可以直接使用。
当一个行为被附加到一个组件时,组件可以访问一个行为的普通成员变量或者一个由吸气剂和设置方法定义的属性。
/ / PROP1 是在财产的行为定义
echo $组件-> PROP1;
为组件-> PROP1 =价值;
同样,公共行为也可以称为行为:
在公共行为的方法中定义
$(>);
你可以看到,虽然美元组件没有定义foo(),PROP1和使用它们以及他们自己定义的组件。
如果两个行为定义相同的属性或方法,并且它们都附加在同一个组件上,那么第一个附加行为是在访问属性或方法时优先考虑的。
组件的附加行为的命名行为可以用来访问行为对象,如下所示:
美元美元的行为=组件-> getbehavior('mybehavior);
您还可以获得附加到该组件的所有操作:
美元美元的行为=组件-> getbehaviors();
去除行为
删除的行为,可以拨打Yii 成分::基础的detachbehavior()方法的实现与行为相关的名称:
为组件-> detachbehavior('mybehavior1);
您也可以删除所有的行为:
为组件-> detachbehaviors();