background image

php 中的常用魔术方法总结

以下是对

php 中的常用魔术方法进行了详细的总结介绍,需要的朋友可以过来参考下

常用的魔术方法有:

__Tostring ()  __Call()  __autoLoad()  __ 

clone

()  __GET()   __SET() 

__isset()  __unset()

 

 

1.__Tostring()   用于定义输出对象引用时调用  常用于打印一些对象的信息 必须有返回值
eg:有一个 persion 类
Persion per =

new

 persion()

Echo

 per;    

//直接调用会出错

我们可以在类的定义中添加

__tostring()方法

代码如下

:

 
Function  __Tostring()
{

$str

=this->

$name

.this->age;

Return 

$str

;

}
 
2.__clone()对象的复制
引用赋值

$per1

=

$per2

; 而这在内存中只有一块地址

$per1

=

clone

 

$per2

   这时有两块内存地址

 
3.__call()方法 当调用类实例中不存在的函数时自动执行
如果试图调用类中不存在的函数,会出现语法错误,为了能够友好的提示
我们可以在类中声明

Call()方法;

代码如下

:

 
Function __call(

$funName

,

$argu

)

{

Echo

 "名为".

$funName

."参数为".printf(

$argh

)."的函数不存在",

}
 
4.__autoLoad 自动加载使用的类文件  该函数是在引用的页面添加
我们都使用过这样情况,在页面中需要调用其他

php 文件,我们需要使用

include

方法

但是如果有几十个页面需要引用,未免太过繁琐,我们可以在该页面中使用

autoload 方法

代码如下

:

 
Function __autoload(

$className

)

{