您的位置:

php魔术变量用法实例详解,php定义变量的方法

本文目录一览:

PHP中魔术变量__METHOD__与__FUNCTION__的区别

本文实例讲述了PHP中魔术变量__METHOD__与__FUNCTION__的区别,分享给大家供大家参考。具体分析如下:

__METHOD__类的方法名(PHP

5.0.0

新加)。返回该方法被定义时的名字(区分大小写)。

__FUNCTION__函数名称(PHP

4.3.0

新加)。自

PHP

5

起本常量返回该函数被定义时的名字(区分大小写)。在

PHP

4

中该值总是小写字母的。

文档解释都是说返回函数(方法)的名字。区别在于:

__FUNCTION__只是返回方法的名字;

__METHOD__返回类的名字和方法的名字。

?php

class

Test{

public

function

doit(){

echo

__FUNCTION__;

}

public

function

doitAgain(){

echo

__METHOD__;

}

}

$obj

=

new

Test();

$obj-doit();

echo

'br';

$obj-doitAgain();

?

输出结果为:

doit

Test::doitAgain

希望本文所述对大家的PHP程序设计有所帮助。

php魔术方法。。

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

魔术方法的引入是对面向对象编程思想的进一步实现,重载就是通过魔术方法来实现的。

PHP 魔术方法主要有:

__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(),__sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone() 和 __debugInfo() 等。

最常见的是__construct(), __destruct(),__get(), __set()等:

__construct和__destruct是类的构造函数和析构函数。

php5中魔术方法函数有哪几个,请举例说明各自的用法

__construct() :实例化对象时被调用;

__destuct():当删除一个对象或者对象操作终止是被执行;

__call():调用对象不存在方法时被调用;

__get():调用对象不存在的属性时被调用;

__set():设置对象不存在的属性时被调用;_

_toString():打印一个对象时被调用,比如echo $obj,print($obj);

__clone():克隆对象时被调用,比如$t = new Test();$tt = clone $t;

__sleep():serialize之前被调用,若对象比较大,想做一些删除在序列化,可以考虑使用该方法;

__wakeup():unserialize之前被调用,做些对象的初始化;

__isset():检测对象是否存在属性的时候被调用,如 isset($c-name);

__unset():unset一个对象属性时被调用,如:unset($c-name);

__set_state():调用var_export时被调用,用__set_state的返回值作为 var_export的返回值;,

__autoload():实例化一个对象时,如果对应的类不存在,在该方法被调用。

希望你能采纳,谢谢。

PHP魔术变量是什么求详解,不要去复制然后来粘贴

魔术变量就是指那些根据不同环境有不同的取值

比如

__FILE__

就是一个典型的魔术变量,当它出现在a.php文件里时它的值就是a.php的具体路径,出现在b.php文件里就是b.php的具体路径

其他的一些魔术变量还有__FUNCTION__, __CLASS__

总之这些变量的值往往不是固定的,变来变去的,很神奇,像魔术一样,故叫做魔术变量