魔术常量

构造函数   __construct()
在对象被创建时自动被调用,完成类初始化的工作
特征
可以传递参数,可以设定默认参数值,可以调用属性和方法
一个类中有且只有一个构造函数

析构函数 __destruct
当对象成为垃圾或当对象被显示式销毁时执行,会被自动调用
在脚本关闭时调用

属性重载 __set ( string $name , mixed $value )

方法重载

__call ( string $name , array $arguments )
__callStatic ( string $name , array $arguments )


克隆
__toString()
__toString() 方法用于一个类被当成字符串时应怎样回应
只有在直接使用于 echo 或 print 时才能生效


魔术常量的特征
系统自定义的函数方法,都以__开头,自动被调用,可被继承,不可以自己定义,不能被static修饰除了__callStatic()

时间: 2024-10-13 18:03:29

魔术常量的相关文章

利用魔术常量的特性定义绝对地址!

1.为什么我们要选择这个特性去定义绝对地址呢?   因为一般来说,在选择载入文件的时候都是选择绝对路径来加载的,可是,这种定义的绝对路径有一个致命的缺点是:当我们移动该文件的时候,他在每一部计算机上的绝对路径是不一样的,那么如何解决这个问题呢?? 那么我们先来看一下在两部不同的计算机上的同一个文件的加载路径. 1 A: D:/AMP/apache/htdocs/text/lianxi.php 2 B: e:/amp/fuwuqi/apache/htdocs/text/lianxi.php 其实我

PHP系统常量&&魔术常量

系统常量: PHP_OS:操作系统信息 PHP_VERSION: PHP版本 PHP_SAPI:运行环境 魔术常量: __FILE__:当前文件的物理路径 __LINE__: 当前行号 __FUNCTION__:当前的函数名 __CLASS__:当前类名称 __METHOD__:当前的方法名

魔术常量对文件引入、function handling、递归和迭代【分治】、匿名函数、数组和数组指针内容

1.注意魔术常量被引入的问题a.php中载入b.php[其中b.php中输出魔术常量__FILE__输出的是b.php的路径]魔术常量被编译的顺序要在a中代码进行处理之前[可以理解为魔术常量在引入前的编译过程中就已经被预编译]魔术常量相当于占位符[而不是一个引入文件中的变量][注意魔术常量的处理方式]对文件载入过程的理解进一步[就是文件载入语句在文件中执行时,对被载入文件进行编译和复制(这样保证载入的问题的解决)][另外载入文件的作用域问题:载入文件的作用域取决于被载入的位置(例子就是在func

20150110--魔术方法魔术常量+面向对象-01

回顾 面向对象编程:类,对象和实例化 类成员:属性,方法和类常量,访问修饰限定符(public,protected和private) 对象访问属性和方法:对象->属性/方法(实参列表); 内部访问:$this,代表当前进入到类内部的对象 魔术方法:构造方法和析构方法 对象传值,对象比较 面向对象 类的加载 因为要得到一个类的对象,必须先保证类结构已经在内存中(代码段). 自动加载 在需要用到类的时候,系统会根据指定好的路径去找对应的类文件(文件名为基础),然后根据用户指定的操作,对文件进行处理(

php魔术方法与魔术常量

当我们学习 对象的时候,经常会听到老师们说世界万物皆对象,那么也一定会听到魔术方法和魔术常量等概念,那我们在学习温习的时候自己随手总结的: php中常见的魔术方法有哪些呢? 1)魔术方法都以 __双下划线开头! 例如: __construct(); __destruct(); __clone(); __sleep(); __wakeup(); __get() __set(); __isset(); __unset(); __call(); __callStatic() 注意:也许你也许会说__开

PHP魔术常量

系统常量是PHP已经定义好的常量,我们可以直接拿来使用,常见的系统常用有:(1)__FILE__ :php程序文件名.它可以帮助我们获取当前文件在服务器的物理位置.(2)__LINE__ :PHP程序文件行数.它可以告诉我们,当前代码在第几行.(3)PHP_VERSION:当前解析器的版本号.它可以告诉我们当前PHP解析器的版本号,我们可以提前知道我们的PHP代码是否可被该PHP解析器解析.(4)PHP_OS:执行当前PHP版本的操作系统名称.它可以告诉我们服务器所用的操作系统名称,我们可以根据

PHP中的魔术方法和魔术常量简介和使用

魔术方法(Magic methods) PHP中把以两个下划线__开头的方法称为魔术方法,这些方法在PHP中充当了举足轻重的作用. 魔术方法包括: __construct(),类的构造函数 __destruct(),类的析构函数 __call(),在对象中调用一个不可访问方法时调用 __callStatic(),用静态方式中调用一个不可访问方法时调用 __get(),获得一个类的成员变量时调用 __set(),设置一个类的成员变量时调用 __isset(),当对不可访问属性调用isset()或e

PHP之魔术常量

1 <?php 2 3 4 /* 5 魔术常量: 6 在面向对象中使用的:__CLASS__ __METHOD__ 7 self: 和 __CLASS__的区别 8 self 是一个结构 ... 9 __CLASS__ 是一个类名 10 11 常用的魔术常量: __DIR__ __FUNCTION__ __LINE__ __FILE__ 12 13 */ 14 15 class Student{ 16 public function getMagicConst(){ 17 echo "__

PHP魔术函数、魔术常量、预定义常量

一.魔术函数(13个) 1.__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2.__destruct() 当删除一个对象或对象操作终止时被调用. 3.__call() 对象调用某个方法, 若方法存在,则直接调用:若不存在,则会去调用__call函数. 4.__get() 读取一个对象的属性时,若属性存在,则直接返回属性值: 若不存在,则会调用__get函数. 5.__set() 设置一个

几个 PHP 的“魔术常量”

PHP 向它运行的任何脚本提供了大量的预定义常量.不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 有八个魔术常量它们的值随着它们在代码中的位置改变而改变.例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定.这些特殊的常量不区分大小写,如下: 几个 PHP 的“魔术常量” 名称 说明 __LINE__ 文件中的当前行号. __FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名.自 PHP