第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 详解在PHP的Yii框架中使用行为Behaviors办法yiibehaviors

详解在PHP的Yii框架中使用行为Behaviors办法yiibehaviors

时间:2020-02-11 22:19:33

相关推荐

详解在PHP的Yii框架中使用行为Behaviors办法yiibehaviors

php教程|php手册

PHP,Yii,mysql数据库

php教程-php手册

详解在PHP的Yii框架中使用行为Behaviors的方法,yiibehaviors

晴天cms源码,vscode开发c使用体验,ubuntu面板,tomcat编程,sqlite printf,分割画面的网页设计,dede 恢复数据库文件,买了云服务器怎么用,人人商城插件安装教程,mina框架前端框架,爬虫忠告,php 加减乘除,永川seo,springboot生成平台,织梦标签调用文章表情,服装公司网站源码,个人简介网页制作代码,vb打印模板,万网备案后台管理账户是什么,html5提示页面,公司管理系统模板,易语言编程好了 怎么成为程序lzw

一个绑定了行为的类,表现起来是这样的:

微信红包牛牛源码php,vscode查看变量被调用,ubuntu 终端汉化,mac的tomcat下载,爬虫皮蠹,php tr td,seo教程经典版app推广,一页式的网站模版下载,phpcms内容页模板下载lzw

// Step 1: 定义一个将绑定行为的类class MyClass extends yii\base\Component{ // 空的}// Step 2: 定义一个行为类,他将绑定到MyClass上class MyBehavior extends yii\base\Behavior{ // 行为的一个属性 public $property1 = This is property in MyBehavior.; // 行为的一个方法 public function method1() { return Method in MyBehavior is called.; }}$myClass = new MyClass();$myBehavior = new MyBehavior();// Step 3: 将行为绑定到类上$myClass->attachBehavior(myBehavior, $myBehavior);// Step 4: 访问行为中的属性和方法,就和访问类自身的属性和方法一样echo $myClass->property1;echo $myClass->method1();

上面的代码你不用全都看懂,虽然你可能已经用脚趾头猜到了这些代码的意思, 但这里你只需要记住行为中的属性和方法可以被所绑定的类像访问自身的属性和方法一样直接访问就OK了。 代码中, $myClass 是没有 property1 method() 成员的。这俩是 $myBehavior 的成员。 但是,通过 attachBehavior() 将行为绑定到对象之后, $myCalss 就好像练成了吸星大法、化功大法,表现的财大气粗,将别人的属性和方法都变成了自己的。

洛阳培训网源码,vscode一直有光标怎么回事,ubuntu双系统切换,tomcat不支持部署项目,sqlite修改表列,app网页设计制作公司,ftp服务器怎么设置ip,51插件,新拟态前端框架,爬虫有何作用,php数组筛选,投放seo,如何黑 ecshop网站,网页 手机播放器 插件,软件官网模板,页面过渡效果 兼容ie8,讯时网站管理系统漏洞,题库类小程序源码lzw

另外,从上面的代码中,你还要掌握使用行为的大致流程:

从 yii\base\Component 派生自己的类,以便使用行为;

从 yii\base\Behavior 派生自己的行为类,里面定义行为涉及到的属性、方法;

将Component和Behavior绑定起来;

像使用Component自身的属性和方法一样,尽情使用行为中定义的属性和方法。

使用行为,必须像前文描述的一样先把它附加到 yii\base\Component 类或其子类。一旦行为附加到组件,就可以直接使用它。

行为附加到组件后,可以通过组件访问一个行为的公共成员变量或 getter 和 setter 方法定义的属性:

// "prop1" 是定义在行为类的属性echo $component->prop1;$component->prop1 = $value;类似地也可以调用行为的公共方法:// foo() 是定义在行为类的公共方法$component->foo();

如你所见,尽管 $component 未定义 prop1 和 foo() ,它们用起来也像组件自己定义的一样。

如果两个行为都定义了一样的属性或方法,并且它们都附加到同一个组件,那么首先附加上的行为在属性或方法被访问时有优先权。

附加行为到组件时的命名行为,可以使用这个名称来访问行为对象,如下所示:

$behavior = $component->getBehavior(myBehavior);

也能获取附加到这个组件的所有行为:

$behaviors = $component->getBehaviors();

移除行为

要移除行为,可以调用 yii\base\Component::detachBehavior() 方法用行为相关联的名字实现:

$component->detachBehavior(myBehavior1);

也可以移除全部行为:

$component->detachBehaviors();

您可能感兴趣的文章:

PHP的Yii框架中移除组件所绑定的行为的方法PHP的Yii框架中行为的定义与绑定方法讲解深入讲解PHP的Yii框架中的属性(Property)PHP的Yii框架中使用数据库的配置和SQL操作实例教学深入解析PHP的Yii框架中的event事件机制全面解读PHP的Yii框架中的日志功能Yii使用find findAll查找出指定字段的实现方法解析yii数据库的增删查改Yii PHP Framework实用入门教学(详细介绍)详解PHP的Yii框架中组件行为的属性注入和方法注入

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。