深入理解Yii2.0(1) 属性

原创 2016年08月29日 07:08:56

更多内容: http://blog.yuhai.win

http://www.digpage.com/property.html


1、成员变量于属性的区别

a、成员变量是一个“内”概念,反应的是内的结构构成。属性是一个外概念,反应类的逻辑意义,

b、成员变量没有读写权限控制,而属性可以指定为只读或只写,或可读可写。

c、成员变量不对读做任何后处理,不对写入做任何预处理,而属性则可以。

d、public 成员变量可以视为一个可读可写、没有任何预处理的属性。而 private成员变量由于外部不可见,与外的特征不相符,所以不能视为属性。

e、虽然大多数情况下,属性有某个或者某些成员变量来表示。但属性与成员变量没有必然的对应关系

2、实现属性的步骤
a、继承自 yii\base\Object

b、声明一个用于保存该保存该属性的私有变量。

c、提供getter或setter函数,或两者都提供,用于访问、修改上面提到的私有成员变量。

class Post extends yii\base\Object    // 第一步:继承自 yii\base\Object
{
    private $_title;                 // 第二步:声明一个私有成员变量

    public function getTitle()       // 第三步:提供gettersetter
    {
        return $this->_title;
    }

    public function setTitle($value)
    {
        $this->_title = trim($value);
    }
}


3、Object 和 Component
yii\base\Component 继承至yii\base\Object 他也具有属性等基本功能。但是Component还引入了事件、行为,因此,他并非简单继承了Object的属性实现方式,而是基于同样的机制,重载了__get() __set等函数。Object 并不支持 时间和行为。


版权声明:希望三心草的博客能够帮助到大家!更多内容: http://blog.yuhai.win https://blog.csdn.net/u012119576/article/details/52349773

深入理解Yii2.0

  • 2015年03月05日 17:20
  • 1.1MB
  • 下载

深入理解 Yii2.0 - 属性,事件,行为。

前言本博客基于 深入理解Yii2.0.并且参考Yii2.0 官方文档,加上自己使用Yii2.0的一些总结和理解。Yii 2.0Yii 是一个高性能,基于组件的 PHP 框架。 为什么要用Yii 2....
  • Return_True_hang
  • Return_True_hang
  • 2017-03-22 00:25:56
  • 556

深入理解Yii2.0-20141110版

  • 2014年11月11日 07:14
  • 1.93MB
  • 下载

深入理解YII2.0的行为

行为(Behavior) 使用行为(behavior)可以在不修改现有类的情况下,对类的功能进行扩充。 通过将行为绑定到一个类,可以使类具有行为本身所定义的属性和方法,就好像类本来就有这些属性和...
  • ltx06
  • ltx06
  • 2016-08-29 09:20:14
  • 459

yii框架2.0

  • 2014年12月08日 00:10
  • 1.29MB
  • 下载

深入理解云计算-基本原理和应用程序编程技术(中文版)

  • 2017年10月07日 19:49
  • 75.18MB
  • 下载

深入理解nginx

深入理解nginx预备软件1. 查看内核版本 因为2.6以上的内核才支持epoll,nginx的高并发的特性依赖epoll uname -a “Linux com.guang 3.10...
  • u010919601
  • u010919601
  • 2017-11-03 19:42:09
  • 227

深入理解SQL中where 1=1的用处

前言where 1=1有什么用?在SQL语言中,写这么一句话就跟没写一样。 在我的理解中 SQL中where1=1 有两个用处1、where 的条件为永真select * from table1 w...
  • idomyway
  • idomyway
  • 2017-12-26 16:34:36
  • 172

[深入理解Android卷一全文-第六章]深入理解Binder

由于《深入理解Android 卷一》和《深入理解Android卷二》不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容。第6章 深入理解Binde...
  • Innost
  • Innost
  • 2015-08-02 16:00:28
  • 11530

深入理解Java虚拟机笔记(一)

内容主要参考《深入理解Java虚拟机(第2版)》 Java和C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人想出来。 一 JVM运行时数据区 yun如下图: ...
  • zoufangyingzi
  • zoufangyingzi
  • 2017-02-20 18:04:26
  • 723
收藏助手
不良信息举报
您举报文章:深入理解Yii2.0(1) 属性
举报原因:
原因补充:

(最多只允许输入30个字)