php魔术常量、超全局变量、魔术方法

一、魔术常量(魔术变量)

概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位置而变化。

1、__LINE__  获取文件中的当前行号。

2、__FILE__  获取文件的完整路径和文件名。

3、__DIR__   获取文件所在目录。

4、__FUNCTION__  获取函数名称(PHP 4.3.0 新加)。

5、__CLASS__    获取类的名称(PHP 4.3.0 新加)。

6、__METHOD__  获取类的方法名(PHP 5.0.0 新加)。

7、__NAMESPACE__ 当前命名空间的名称(区分大小写)。

8、__TRAIT__  Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常量返回 trait 被定义时的名字(区分大小写)。Trait 名包括其被声明的作用区域(例如 Foo\Bar)。

 

扫描二维码关注公众号,回复: 5733040 查看本文章

情况一:
    __FUNCTION__与__METHOD__ 同处于“类外”的函数体中,他们的返回值是一样一样滴.
情况二:
    __FUNCTION__与__METHOD__ 同处于“类内”的函数体中,__METHOD__ 比 __FUNCTION__前面多了个“类名::”

 

二、超全局变量(9个)

1、$GLOBALS  :储存全局作用域中的变量
2、$_SERVER  :获取服务器相关信息
3、$_REQUEST :获取POST和GET请求的参数
4、$_POST : 获取表单的POST请求参数
5、$_GET: 获取表单的GET请求参数
6、$_FILES :获取上传文件的的变量
7、$_ENV : 获取服务器端环境变量的数组
8、$_COOKIE:获取浏览器的cookie

浏览器cookie的操作
设置cookie:setcookie(name, value, expire, path, domain);
获取cookie:$_COOKIE[“user”];
删除cookie:setcookie(“user”, “”, time()-3600);//设置过期时间


9、$_SESSION : 获取session


服务端session的操作
使用session前一定要session_start()启动session
储存session:$_SESSION[‘name’]=”leixuesong”;//数组操作
销毁session:unset($_SESSION[‘views’]);//销毁一个
session_destroy()和unset($_SESSION);//销毁所有的session

 

 

三、魔术方法(魔术函数)

 

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

 

分别为:    __construct()__destruct()__call()__callStatic()__get()__set()__isset()__unset()__sleep()__wakeup()__toString()__invoke()__set_state()__clone()__debugInfo() 等方法在 PHP 中被称为"魔术方法"(Magic methods)。在命名自己的类方法时不能使用这些方法名,除非是想使用其魔术功能。

 

猜你喜欢

转载自www.cnblogs.com/jcydd/p/10634636.html