PHP超全局变量、魔术变量和魔术方法
PHP超全局变量
$_GET 通过get方式传递的值(通过 URL 参数传递给当前脚本的变量的数组。)
$_POST 通过post形式传递的值(当 HTTP POST 请求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本。)
$_COOKIE 获取客户端传递的COOKIE的值(通过 HTTP Cookies 方式传递给当前脚本的变量的数组)
$_REQUEST 默认情况下包含 $_GET $_POST $_COOKIE的值
$_FILES 获取上传文件的的变量
$_SERVER 获取web服务器的诸如header、 path、 script locations等信息(大量的此类变量都会在» CGI 1.1 规范中说明)
$_ENV 获取服务器端环境变量的数组
$_SESSION 获取当前脚本可用的SESSION变量的数组(一个访问者访问你的 web 网站将被分配一个唯一的 id, 就是所谓的会话 id. 这个 id 可以存储在用户端的一个 cookie 中,也可以通过 URL 进行传递.通过会话id存储的数据为session值)
$GLOBAL 包含全部变量的全局数组(变量的名字就是数组的键)
魔术变量
__CLASS__ 获取当前类定义时的名称
__DIR__ 文件的完整路径(如果是被包含文件中使用,则为被包含文件的信息)
__LINE__ 文件中的当前行(如果是被包含文件中使用,则为被包含文件的信息)
__FILE__ 文件的完整路径和文件名(如果是被包含文件中使用,则为被包含文件的信息)
__NAMESPACE__ 获取当前命名空间
__FUNCTION__ 获取当前函数名
__METHOD__ 获取当前类的方法名(PHP 5.0.0 新加)
__FUNCTION__ __METHOD__的区别:类外的函数体中,效果一样同为返回方法名;类内部的函数体中, METHOD会额外带有 "类名::"
魔术方法
__construct 初始化类时调用
__destruct 销毁类时调用
__call __callStatic() 调用对象中不可访问的方法时调用(在对象中调用一个不可访问方法时,__call() 会被调用。在静态上下文中调用一个不可访问方法时,__callStatic() 会被调用)
__get 读取对象中不可访问的参数时调用
__set 对对象中不可访问的参数赋值时调用
__isset 对对象中不可访问的参数使用isset时调用
__unset 对象中不可访问的参数使用unset时调用
__empty 对象中不可访问的参数使用emptyt时调用
__clone 对象克隆时调用
__sleep 对象内部调用serialize() 时会先调用
__wakeup 对象内部调用unserialize() 时会先调用
__set_state 自 PHP 5.1.0 起当调用 var_export() 导出类时,此静态 方法会被调用。
__debugInfo() 调用 var_dump 时会先调用
PHP超全局变量、魔术变量和魔术方法的更多相关文章
- PHP超级全局变量、魔术变量和魔术函数的区别和联系
PHP超级全局变量.魔术变量和魔术函数的区别和联系 一.总结 一句话总结:PHP超级全局变量主要用于web开发,魔术变量主要用于输出当前对象的信息,魔术函数则是对象的常用方法 相同点: 1.PHP超级 ...
- PHP魔术变量和魔术方法
基础知识:魔术变量和魔术方法 魔术变量:最初PHP魔术变量的出现主要是为了方便开发者调试PHP的代码;当然也可以利用这个实现特殊需求.在写法上魔术变量前后都有两个下划线. 如:_LINE_:返回文件中 ...
- PHP 魔术变量和魔术函数详解
魔术变量 PHP 向它运行的任何脚本提供了大量的预定义常量. 不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 有八个魔术常量它们的 ...
- PHP 常量、PHP 变量全解析(超全局变量、变量的8种数据类型等)
常量特点 常量一旦被定义就无法更改或撤销定义. 常量名不需要开头的$ 与变量不同,常量贯穿整个脚本是自动全局的. 作用域不影响对常量的访问 常量值只能是字符串或数字 设置 PHP 常量 如需设置常量, ...
- PHP超级全局变量、魔术变量和魔术函数
PHP超级全局变量(9个) $GLOBALS 储存全局作用域中的变量 $_SERVER 获取服务器相关信息 $_REQUEST 获取POST和GET请求的参数 $_POST 获取表单的POST请求参数 ...
- nginx中在超全局变量$_SERVER中增加变量
业务中可能会用到一些自定义的超全局变量,需要在nginx中生成的,比如,每次nginx请求的id,可以在nginx中配置 如: location ~ \.php$ { root / ...
- php代码审计2全局变量和超全局变量
全局变量:就是在函数外面定义的变量,不能在函数中直接使用,因为它的作用域不会到函数内部,所以在函数内部使用的时候尝尝看到类似global $a; 超全局变量:在所有脚本都有效,所以,在函数可以直接使用 ...
- php预定义变量,超全局变量,魔术方法,特殊函数变量使用
<?php /* * 本代码全部为测试函数代码,部分注释和写实例 * * 修改php.ini variables_order=”EGPCS” * 请注意$_REQUEST在优先级传参的时候会造成 ...
- PHP的魔术常量(变量)、魔术方法(函数)、超全局变量
https://www.cnblogs.com/ccw869476711/p/9183783.html 一.魔术常量(魔术变量) 概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位 ...
随机推荐
- 利用d3js绘出环形百分比环
利用d3js绘出环形百分比环 (function() { var numberData = [{ value : 0.334, text : "33.4%", color : &q ...
- kindeditor Springmvc 整和解决图片上传问题
1. 在编辑页面引入js <script type="text/javascript" charset="utf-8" src="${baseP ...
- [codeforces274b]Zero Tree(树形dp)
题意:给出一棵树,每个点有权值,每次操作可以对一个联通子集中的点全部加1,或者全部减1,且每次操作必须包含点1,问最少通过多少次操作可以让整棵树每个点的权值变为0. 解题关键:自底向上dp,记录up, ...
- App Distribution Guide--(三)---Configuring Your Xcode Project for Distribution
Configuring Your Xcode Project for Distribution You can edit your project settings anytime, but some ...
- 2013年第四届蓝桥杯国赛试题(JavaA组)
1.结果填空 (满分12分)2.结果填空 (满分15分)3.结果填空 (满分10分)4.程序设计(满分16分)5.程序设计(满分20分)6.程序设计(满分27分) 1.标题:填算式 请看下面的算式: ...
- CentOS 安装Perl环境
参考博文:https://blog.csdn.net/weixin_40192129/article/details/78610974 vmware tools需要perl环境的支持 安装perl支持 ...
- java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell
异常 在使用POI读取Excel文件内容时,发生了异常,报错如下: 大概意思是不能从一个数值的列获取一个字符串类型的值,我使用下面的代码来获取单元格的值: //此处省略N行代码 String cell ...
- SSH 代码笔记
os.path :https://www.cnblogs.com/wuxie1989/p/5623435.html .format():https://blog.csdn.net/i_chaoren/ ...
- codeforces786E ALT【倍增+最小割】
方案二选一,显然是最小割,朴素的想法就是一排人点一排边点,分别向st连流量1的边,然后人点向路径上的边点连流量inf的边跑最大流 但是路径可能很长,这样边数就爆了,所以考虑倍增,然后倍增后大区间向小区 ...
- codevs 2314 数学作业
2314 数学作业 2011年省队选拔赛湖南 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 小 C 数学成绩优异 ...