我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

PHP 魔法变量

魔法变量是指那些根据不同的环境而具有不同值的变量。下面是魔法常量,也称为魔法变量,因为它们在不同的环境下有不同的值。很高兴知道本质是一个常数。

PHP 为其运行的任何脚本提供了大量预定义常量。

然而,许多常量是由不同的扩展库定义的,只有在加载这些扩展库时才会出现,无论是动态加载还是在编译时包含。

有八个魔法常量,它们的值根据它们在代码中的位置而变化。

名单如下:

● LINE:查找文件中的当前行号。

● 文件:查找文件的完整路径和文件名。如果在包含文件中使用,

返回包含的文件名。

● DIR:查找文件所在目录。如果在包含文件中使用,则返回包含文件所在的目录。

●:函数名称(PHP 4.3.0 中新增) 从 PHP 5 开始,该常量返回定义函数时的名称(区分大小写)。

● CLASS:类的名称(PHP 4.3.0 新增)。从 PHP 5 开始,该常量返回类定义时的名称。

(区分大小写)。

● TRAIT:Trait 的名称(PHP 5.4.0 新增)。从 PHP 5.4.0 开始,PHP 实现了代码复用

方法,称为。

●:类的方法名(PHP 5.0.0新添加)。返回定义方法时的方法名称

(区分大小写)。和 的区别在于它返回类的名称和方法的名称

相反,它只返回方法的名称(前提是该方法位于类中)。

●:当前命名空间的名称(PHP 5.3.0 中的新功能)。

(区分大小写)。该常量是在编译时定义的。

线

确定文件中的当前行号。

例子:


文件

文件的完整路径和文件名。如果在包含文件中使用,则返回包含文件的名称。

从 PHP 4.0.2 开始,FILE 始终包含绝对路径(或者在符号链接的情况下解析的绝对路径),而在此之前的版本有时包含相对路径。

例子:


DIR(PHP 5.3.0 中的新功能)

文件所在的目录。如果在包含文件中使用,则返回包含文件所在的目录。

它相当于(文件)。目录名称不包含尾部斜杠,除非它们是根目录。

例子:


(PHP 4.3.0 中的新增功能)(区分大小写)

函数名称。从 PHP 5 开始,该常量返回函数定义时的名称。在 PHP 4 中,该值始终为小写。

例子:


CLASS(PHP 4.3.0 中的新增功能)(区分大小写)

班级名称。从 PHP 5 开始,该常量返回定义类时的类名。在 PHP 4 中,该值始终为小写。

类名包括声明它的范围(例如 Foo\Bar)。请注意,自 PHP 5.4 起,CLASS 也适用于特征。当在特征方法中使用时,CLASS 是调用特征方法的类的名称。

例子:

";
    }
}
$t = new test();
$t->print();//输出类名为:test
?>

TRAIT(PHP 5.4.0 中的新增功能)

性状名称。从PHP 5.4.0开始,PHP实现了一种代码重用的方法,称为.

例子:

sayHello();
?>

提示:从基类继承的成员将被插入的 Trait 中的方法覆盖。其行为类中定义的方法是一致的。优先顺序是当前类中的方法覆盖特征方法,特征方法又覆盖基类中的方法。

(PHP 5.0.0 中的新增功能)(区分大小写)。

类的方法名称。返回定义方法时的方法名称。如果有类,则连同类名一起返回。

例子:

class a {  
    function fa() {  
        return __METHOD__;  
    }  
      
    function fb() {  
        return __FUNCTION__;  
    }  
}  
  
$Obj = new a();  
echo $Obj->fa();// 输出 a::fa  
echo $Obj->fb();// 输出 fb

(PHP 5.3.0 中的新增功能)(区分大小写)

返回当前命名空间的名称。该常量是在编译时定义的。

例子:


PHP 魔法函数

PHP魔法函数(13)以后会慢慢学习,所以我们先来了解一下:

● () 在实例化对象时调用,与类名结合时调用

当该函数名的函数同时存在时,它会被调用,而另一个则不会被调用。

● () 当对象被删除或对象操作终止时调用。

● () 对象调用方法。如果该方法存在,则直接调用;如果

如果不存在,将调用该函数。

● __get() 读取对象的属性时,如果属性存在,则直接返回属性值;如果不存在,则调用 __get 函数。

● __set() 设置对象的属性时,如果属性存在,则直接赋值;如果不存在,则调用 __set 函数。

● () 在打印对象时被调用。如 echo $obj;或打印 $obj;

● () 在克隆对象时被调用。例如:$t=new Test();$t1=克隆$t;

● () 之前被调用过。如果对象比较大,想在序列化之前删除一点,可以考虑这个函数。

● 调用()来做一些对象初始化工作。

● () 在检查对象的属性是否存在时调用。如:isset($c->name)。

● () 在取消设置对象的属性时调用。例如:取消设置($c->名称)。

● 当()被调用时,它被调用。使用返回值作为返回值。

● () 实例化对象时,如果对应的类不存在,则调用该方法。

PHP 中的下一章“命名空间”:

二维码
扫一扫在手机端查看

本文链接:https://by928.com/8039.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线