码迷,mamicode.com
首页 > Web开发 > 详细

php 魔术方法

时间:2017-07-23 20:59:54      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:lin   无法   添加   debug   功能   state   保留   检测   link   

1、__construct()__destruct()__call()__callStatic()__get()__set()__isset()__unset()__sleep()__wakeup()__toString()__invoke()__set_state()__clone()__debugInfo() 等方法在 PHP 中被称为"魔术方法"(Magic methods)。在命名自己的类方法时不能使用这些方法名,除非是想使用其魔术功能。

2、注意事项

PHP 将所有以 __(两个下划线)开头的类方法保留为魔术方法。所以在定义类方法时,除了上述魔术方法,建议不要以 __ 为前缀。

3、__get 和 __set

__get:
__get魔术方法,它是在外部访问该类中不能直接访问的属性时自动被调用

魔术方法都有其默认的定义格式,不能随意的更改
魔术方法不能被添加static静态的修饰符,出了callstatic
__get魔术方法必须有一个返回值

__set:
__set魔术方法,在给类中无法直接访问的属性赋值时自动调用
 property_exists  检测类或者对象中是否包含指定名称的属性

4
__call 魔术方法:
在对象中调用一个不可访问方法时,__call() 会被调用。
method_exists 判断类中是否包含某个指定名称的函数方法
 



 


php 魔术方法

标签:lin   无法   添加   debug   功能   state   保留   检测   link   

原文地址:http://www.cnblogs.com/zx997/p/7225847.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!