php魔术方法__set和__get,__isset,__unset的用法

原创 2015年07月07日 22:58:47

class people{
private $date = array();

public function __set($key,$value){
$this->date[$key] = $value;
}

public function __get($key){
if(array_key_exists($key,$this->date)){
echo $key;
return $this->date[$key];
}else{
 return "dgfdg";
}
}

public function __isset($key){
return isset($this->date[$key]);
}

public function __unset($key){
if(array_key_exists($key,$this->date)){
unset($this->date[$key]);
}
}
}


$p1 = new people();
$p1->name = "xiaozhao";
echo $p1->name;   //xiaozhao

php魔术方法__set和__get,__isset,__unset的用法:讲解费口舌直接看例子,看不懂运行一下再看!哈哈


版权声明:本文为博主原创文章,有不对的地方欢迎指正。

面向对象之魔术方法__get()和__set()

__get()方法:这个方法用来获取私有成员和保护成员属性值的,有一个参数,参数传入你要获取的成员属性的名称,返回获取的属性值,这个方法不用我们手工的去调用,因为我们也可以把这个方法做成私有的方法,是...
  • pan_xi_yi
  • pan_xi_yi
  • 2016年05月13日 08:47
  • 1057

PHP魔术方法使用总结

魔术方法是PHP面向对象中特有的特性。它们在特定的情况下被触发,都是以双下划线开头,你可以把它们理解为钩子,利用模式方法可以轻松实现PHP面向对象中重载(Overloading即动态创建类属性和方法)...
  • BlingBlingjuan
  • BlingBlingjuan
  • 2016年07月22日 07:31
  • 977

PHP中的常见魔术方法功能作用及用法实例

概述 在面向对象编程中,PHP提供了一系列的魔术方法,这些魔术方法为编程提供了很多便利。PHP中的魔术方法通常以__(两个下划线)开始,并且不需要显示的调用而是由某种特定的条件出发。这篇文章简单...
  • a2534725767
  • a2534725767
  • 2017年02月15日 12:57
  • 4211

PHP魔术方法和魔术变量总结

从php5以后的版本,类就可以使用魔术方法了。php规定以两个下划线开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开 头,除非是为了重载已有的魔术方法。目前php已有的魔术方法有 __co...
  • u010187139
  • u010187139
  • 2015年07月11日 12:46
  • 1677

对PHP5中__set和__get的理解

通常情况下,将类的成员变量定义为private这样好处一个是为了类的封装性,同时能体现良好的变成习惯。但是对于成员变量的读写操作是非常繁琐的,因此,在 PHP5中定义了两个魔法方法,__set()...
  • wh531030320
  • wh531030320
  • 2015年10月23日 10:30
  • 2532

PHP unset()函数销毁变量

PHP unset()函数是用来销毁变量的,但很多时候,这个函数只把变量给销毁了,内存中存放的该变量的值仍然没有销毁,也就是没能达到我们想要的释放内存的效果。这里我建议大家用 $变量=null 的方法...
  • tingliting
  • tingliting
  • 2015年11月03日 13:41
  • 1433

PHP魔术方法之__set()和__get()

一般来说,把类中的成员属性dingyi 1,魔术方法__set()
  • yiqitony
  • yiqitony
  • 2014年04月07日 11:19
  • 351

java中set和get方法的理解使用

java中set和get方法的理解使用 Java为什么会引入set/get方法??         显然回答这个问题,我们需要了解封装         封装是保证软件部件具有优良的模块性的基础,...
  • wjtyy
  • wjtyy
  • 2015年05月22日 20:11
  • 9074

php面向对象基础概念(属性重载的魔术方法)__get(),__set(),__isset(),__unset()

--在给不可访问属性赋值时,__set()会被调用。 __get()方法:这个方法用来获取私有成员属性值的,有一个参数, 参数传入你要获取的成员属性的名称,返回获取的属性值, 这个方法不用我们手工的去...
  • PHPwhite
  • PHPwhite
  • 2015年06月18日 16:47
  • 994

Java 对类中的属性使用set/get方法的意义和用法

java 中对类中的属性使用set/get方法的意义和用法 经常看到有朋友提到类似:对类中的属性使用set/get方法的作用?理论的回答当然是封闭性之类的,但是这样对我们有什么作用呢?为什么要...
  • u014749862
  • u014749862
  • 2015年10月27日 21:29
  • 21320
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:php魔术方法__set和__get,__isset,__unset的用法
举报原因:
原因补充:

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