`
willeager
  • 浏览: 95244 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

PHP魔术常量 魔术函数

    博客分类:
  • PHP
阅读更多
1 : //魔术常量
2 : __LINE__ //文件中的当前行号(包含注释行)
3 : __FILE__ //文件的完整路径和文件名
4 : __FUNCTION__ //当前所在的函数名称(PHP 4.3.0 新增)
5 : __CLASS__ //当前所在的类的名称( PHP 4.3.0 新增)
6 : __METHOD__ //当前所在的类的方法名( PHP 5.0.0 新增)
7 : //内核预定义常量
8 : PHP_VERSION //PHP版本信息和phpversion()结果相同
9 : PHP_OS //操作系统信息
一些典型的应用如下:
1: //操心系统类型判断
2: if (substr(PHP_OS, 0, 3) == 'WIN') {
3:     define('OS_WINDOWS', true);
4: } else {
5:     define('OS_WINDOWS', false);
6: }
1: //获取当前文件的文件名和路径
2: echo basename(__FILE__);
3: echo dirname(__FILE__);


魔术函数

1。__construct()
实例化对象时被调用,
当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。

2。__destruct()


当删除一个对象或对象操作终止时被调用。

3。__call()
对象调用某个方法,
若方法存在,则直接调用;
若不存在,则会去调用__call函数。

4。__get()
读取一个对象的属性时,
若属性存在,则直接返回属性值;
若不存在,则会调用__get函数。

5。__set()
设置一个对象的属性时,
若属性存在,则直接赋值;
若不存在,则会调用__set函数。

6。__toString()


打印一个对象的时被调用。如echo $obj;或print $obj;

7。__clone()


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

8。__sleep()


serialize之前被调用。若对象比较大,想删减一点东东再序列化,可考虑一下此函数。

9。__wakeup()


unserialize时被调用,做些对象的初始化工作。

10。__isset()
检测一个对象的属性是否存在时被调用。如:isset($c->name)。

11。__unset()
unset一个对象的属性时被调用。如:unset($c->name)。

12。__set_state()
调用var_export时,被调用。用__set_state的返回值做为var_export的返回值。

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

分享到:
评论

相关推荐

    php 魔术函数和常量一览表

    在PHP编程语言中,魔术函数和常量是其高级特性之一,它们能够在特定条件下自动触发,无需显式调用,从而极大地增强了代码的灵活性和功能。以下是对标题、描述及部分给定内容中提及的PHP魔术函数和常量的详细解析。 ...

    PHP5.3中新增的魔术常量__DIR__

    在PHP编程语言中,魔术常量(Magic Constants)是一类特殊的预定义常量,它们的值根据其在代码中的位置自动变化。这些常量的名字通常由两个下划线(__)开头,使得它们在普通变量中脱颖而出。在PHP 5.3版本中,为了...

    PHP程序设计-3期(KC016) 拓展知识2-2 魔术常量.doc

    在PHP编程语言中,魔术常量是一类特殊的预定义常量,它们的名称总是以两个下划线开头,以此来表明它们的特殊性。这些常量的值会根据它们在代码中的位置自动改变,因此得名“魔术常量”。在提供的文档中,提到了几个...

    PHP程序设计-3期(KC016) 经验技巧2-2 魔术常量.doc

    在PHP编程语言中,魔术常量扮演着特殊的角色,它们提供了关于代码执行环境的动态信息。这些常量的值会根据它们在代码中的位置而自动调整,为开发者提供了便利。以下是一些重要的PHP魔术常量及其详细解释: 1. **__...

    PHP的魔术常量__METHOD__简介

    除了魔术常量,PHP还有一组被称为魔术方法的特殊函数,如`__construct`(构造方法)、`__destruct`(析构方法)、`__call`(调用不存在的方法)等,它们在特定情况下自动调用,提供了强大的功能和灵活性。...

    PHP程序设计-3期(KC016) 常见问题2-2 魔术常量.docx

    魔术常量非常有用,可以提供有关当前脚本、函数、类或命名空间的信息,从而帮助开发者更好地理解和调试程序。本文将详细介绍PHP中的几个常用的魔术常量,并通过示例来解释它们的具体用法。 #### 魔术常量详解 1. *...

    基于PHP5魔术常量与魔术方法的详解

    在PHP5中,魔术常量和魔术方法是两种特殊的语法结构,它们在特定情况下自动触发,为开发者提供了方便的功能和信息。以下是对这些特性的详细解释: **魔术常量**: 1. `__LINE__`:这个常量返回当前代码行的编号,在...

    PHP中几个常用的魔术常量

    在PHP编程语言中,魔术常量是一类特殊常量,它们的值会随着代码执行环境的变化而自动更新。这些常量通常以两个下划线 "__" 开头,以提供有关当前代码上下文的信息。以下是对七个常用魔术常量的详细说明: 1. **__...

    PHP 中魔术常量的实例详解

    PHP中的魔术常量是一系列预定义的常量,它们具有特殊的功能和用途,在PHP的代码执行过程中能够提供关于当前代码环境的信息。魔术常量的存在使得开发者可以在不同的代码上下文中获取特定信息,从而编写出更加健壮和...

    PHP 魔术变量和魔术函数详解_.docx

    在PHP编程语言中,魔术变量和魔术函数是一组特殊的预定义常量和函数,它们的行为与常规常量和函数有所不同,因为它们的值会根据它们在代码中的位置和上下文自动变化。这些特性使得PHP更加灵活,同时也为开发者提供了...

    php 魔术常量详解及实例代码

    PHP中的魔术常量是预定义的常量,它们在特定条件下自动设置,为开发者提供了方便的信息,例如关于类、函数、文件位置等的详细信息。这些常量的名称以两个下划线开头和结尾,因此被称为“魔术常量”。下面我们将深入...

    PHP程序设计-3期(KC016) 课后习题2-2 魔术常量.doc

    在PHP编程语言中,魔术常量和魔术方法是两种特殊的功能,它们在特定情况下自动触发,使得代码能够处理一些特定的场景。以下是关于这些概念的详细说明: **魔术常量**: 1. `__FILE__`: 返回当前脚本的完整路径和...

    详解PHP中的8个魔术常量

    PHP中的魔术常量是指那些在PHP脚本中具有特殊含义的预定义常量,它们的值会根据代码中所在的上下文环境自动改变。这些魔术常量不同于由扩展库定义的其他预定义常量,因为它们不需要加载任何扩展即可使用,也不区分大...

    PHP之基础语法函数

    PHP 是一种广泛使用的服务器端脚本语言,它提供了许多有用的语法函数和魔术常量,以下是 PHP 之基础语法函数的知识点总结: ### 魔术常量 魔术常量是 PHP 提供的一种特殊的常量,它们的值将根据它们在代码中的位置...

    PHP学习记录之常用的魔术常量详解

    PHP中的魔术常量是预定义的常量,它们会在运行时自动改变值,以提供关于源代码的信息。PHP中一共有八个魔术常量,它们的值会根据代码的位置而变化,以下是这些魔术常量的详细解读: 1. __LINE__:该魔术常量返回其...

    PHP中类型转换 ,常量,系统常量,魔术常量的详解

    在PHP编程语言中,类型转换、常量以及魔术常量是关键的概念,它们在编写代码时起着至关重要的作用。 1. **类型转换**: - **自动类型转换**:在进行运算或判断时,PHP会自动进行类型转换。例如,非零整数会被转换...

    PHP 魔术方法整理

    除了魔术方法外,PHP还提供了一些特殊的常量,称为魔术常量。这些常量根据其所在上下文提供有关脚本运行时的信息。 ##### 1. `__LINE__` - 当前行号 返回文件中的当前行号。在调试过程中非常有用,可以快速定位...

Global site tag (gtag.js) - Google Analytics