php魔术方法

__set(String name,mixed value) 该方法的作用是在程序运行过程中为私有的成员属性设置值,没有返回值,第一个参数传入私有属性设置值时的属性名,第二个参数则需要传入为属性设置的值,并且这个方法不需要主动调用,可以在方法前面也加上private关键字修饰,这个方法是在用户为私有属性设置值时自动调用

__get(String name) 在类的外部获取私有属性的值时,会自动调用此方法,返回私有属性的值,也可以在方法前面加上private关键字,防止用户直接去调用他

__isset(String name) 当调用isset()方法是,如果对象的属性private,会自动调用__isset() __unset()方法同理

__clone 通过clone关键字时,如果需要对克隆后的副本对象在克隆时重新赋值,该方法是在对象克隆时自动调用的。该方法自动包含$this和 $that两个对象的引用,$this是副本对象的引用,而$that 则是对原本对象的引用

__toString() 快速获取对象的字符串表示的最便捷的方式,在直接输出对象引用时自动调用的方法

__call 如果尝试调用对象中不存在的方法,会报错,可以在类中添加__call 方法,则调用对象中不存在的方法时就会自动调用该方法,该方法有两个参数,第一个参数是调用不存在的方法时,接受这个方法名称字符串,而参数列表则以数组的形式传递到__call方法的第二个参数中

__sleep 实现对象串行化时会调用该方法,该方法返回的数组中包含的属性会被串行化,否则不会,如果不实现该方法,则默认串行化所有属性

__wakeup 返串行化时调用,用来在二进制串重新组成一个对象时,为新对象中的成员属性重新初始化
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值