PHP魔术方法和魔术变量

PHP魔术方法和魔术变量

魔术方法:

PHP把所有以__(两个下划线)开头的类方法当成魔术方法;

  1. __construct()->构造方法;
  2. __destruct()->析构函数;
  3. __get(string $name)->是访问和设置类不存在的成员变量时调用的;
  4. __set(string $name, mixed $value)->则是访问和设置类不存在的成员变量时调用的;
  5. __call(string $name, array $arguments)->当调用类中不存在的方法时就会调用;
  6. __toString()->对象被转为string时调用;
  7. __clone()->克隆;

魔术常量:

以两个_开头和结尾的常量为魔术常量;

  1. __LINE__ ->文件中的当前行号;
  2. __FILE__ ->文件的完整路径和文件名;
  3. __DIR__ ->文件所在的目录;
  4. __FUNCTION__ ->函数名称;
  5. __CLASS__ ->类的名称;
  6. __METHOD__ ->类的方法名;
  7. __NAMESPACE__ ->当前命名空间的名称
时间: 2024-08-24 07:47:28

PHP魔术方法和魔术变量的相关文章

PHP中的魔术方法和魔术常量

看上去好像挺烦人,但只要通过例子测试一下,就明白了.不做测试,只是看,第二天还是不明白.当然我在抄其他人的日志,然后希望能是自己的理解就好,原文地址PHP的魔术方法和魔术敞亮简介和使用--LaraBot 魔术方法(Magic methods) In PHP, methods start with two "_"is called magic methods, these methods act as very important role, magic method includes:

php魔术方法与魔术常量

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

PHP魔术方法和魔术变量总结

从php5以后的版本,类就可以使用魔术方法了.PHP规定以两个下划线开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开 头,除非是为了重载已有的魔术方法. 目前php已有的魔术方法有 __construct,__destruct,__call,__get,__set,__isset,__unset,__sleep,__wakeup,__toString,__set_state 和 __clone. __construct和__destruct __construct和__destruc

php预定义变量,超全局变量,魔术方法,特殊函数变量使用

<?php /* * 本代码全部为测试函数代码,部分注释和写实例 * * 修改php.ini variables_order=”EGPCS” * 请注意$_REQUEST在优先级传参的时候会造成数据被覆盖,出现重大bug,建议不要使用 * * 请注意一下是重要的一些超全局参数并不是全部的 * * 软件全部都是编译安装,/usr/local/php * * * */ header("Content-type:text/html;charset=utf-8"); echo $_SER

PHP魔术方法和魔法变量详解

一.魔术常量 __LINE__ 文件中的当前行号.__FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名. 自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径), 而在此之前的版本有时会包含一个相对路径.__DIR__ 文件所在的目录.如果用在被包括文件中,则返回被包括的文件所在的目录. 它等价于 dirname(__FILE__).除非是根目录,否则目录中名不包括末尾的斜杠.__FUNCTION__ 函数名称(

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

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

php -- 魔术方法、魔术常量

魔术方法:PHP把类中所有以__(两个下划线)开头的方法当成魔术方法,一般建议用户不要将自定义的方法前面加上__作为前缀.魔术方法: 1. __construct() 类的默认构造方法,如果__construct()和与类同名的方法共同出现时,默认调用__construct()而不是同类名方法.一般情况下用户自定义构造方法也会使用__construct(). 2. __destruct()类的析构函数,当该对象的所有引用都被删除,或者对象被显式销毁时执行. 3. __get($name)可以简单

PHP魔术方法和魔术常量

1>魔术常量 1.__LINE__返回文件中的当前行号.2.__FILE__ 返回文件的完整路径和文件名.如果用在包含文件中,则返回包含文件名.自PHP4.0.2 起,__FILE__总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径.3.__FUNCTION__ 返回函数名称(PHP4.3.0 新加).自PHP5 起本常量返回该函数被定义时的名字(区分大小写).在PHP4 中该值总是小写字母的.4.__CLASS__ 返回类的名称(PHP4.3.0 新加).自PHP5 起本常量返回该

php 魔术方法 和 魔术常量

魔术方法: PHP把类中所有以__(两个下划线)开头的方法当成魔术方法,一般建议用户不要将自定义的方法前面加上__作为前缀.魔术方法: 1. __construct() 类的默认构造方法,如果__construct()和与类同名的方法共同出现时,默认调用__construct()而不是同类名方法.一般情况下用户自定义构造方法也会使用__construct(). 2. __destruct() 类的析构函数,当该对象的所有引用都被删除,或者对象被显式销毁时执行. 3. __get($name) 可