PHP中的预定义常量、预定义变量、魔术常量

176 阅读2分钟

                                                    PHP中的预定义常量、预定义变量、魔术常量

1、预定义常量
内核预定义常量:是在PHP的内核中就定义好了的常量。区分大小写。
PHP_VERSION:内建常量,PHP程序的版本,如3.0.8_dev
PHP_OS:内建常量,执行PHP解析器的操作系统名称,如Windows。
PHP_EOL:系统换行符,Windows是(\r\n),Linux是(\n),MAC是(\r)。

标准预定义常量:PHP默认定义的常量。区分大小写。
M_PI:返回圆周率π的值。

2、预定义变量(区分大小写)
 [官方API]
超全局变量 — 超全局变量是在全部作用域中始终可用的内置变量 (超全局变量前加上*)
*    $GLOBALS — 引用全局作用域中可用的全部变量
*    $_SERVER — 服务器和执行环境信息
*    $_GET — HTTP GET 变量
*    $_POST — HTTP POST 变量
*    $_FILES — HTTP 文件上传变量
*    $_REQUEST — HTTP Request 变量,默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。
*    $_SESSION — Session 变量,当前脚本可用 SESSION 变量的数组。
*    $_ENV — 环境变量,通过环境方式传递给当前脚本的变量的数组。
*    $_COOKIE — HTTP Cookies,通过 HTTP Cookies 方式传递给当前脚本的变量的数组。
$php_errormsg — 前一个错误信息,变量包含由 PHP 生成的最新错误信息。
这个变量只在错误发生的作用域内可用,并且要求 track_errors 配置项是开启的(默认是关闭的)。
$HTTP_RAW_POST_DATA — 原生POST数据, 包含 POST 提交的原始数据
$http_response_header — HTTP 响应头,$http_response_header 数组与 get_headers() 函数类似。
当使用HTTP 包装器时,$http_response_header 将会被 HTTP 响应头信息填充。$http_response_header 将被创建于局部作用域中。
$argc — 传递给脚本的参数数目,包含当运行于命令行下时传递给当前脚本的参数的数目。
脚本的文件名总是作为参数传递给当前脚本,因此 $argc 的最小值为 1。这个变量仅在 register_argc_argv 打开时可用。
$argv — 传递给脚本的参数数组,包含当运行于命令行下时传递给当前脚本的参数的数组。
第一个参数总是当前脚本的文件名,因此 $argv[0] 就是脚本文件名。 这个变量仅在 register_argc_argv 打开时可用。

3、魔术常量(不区分大小写),一共是四个_,左右各2个
__LINE__ :文件中的当前行号。
__FILE__:文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
__DIR__:文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录,等价于 dirname(__FILE__)。
__FUNCTION__:返回当前函数(或方法)的名称。
__CLASS__:返回当前的类名(类名包括其被声明的作用区域(例如 Foo\Bar))。
__TRAIT__:返回当前的trait名称(包括该trait的作用区域或命名空间)。
__METHOD__:返回当前的方法名(包括类名)。
__NAMESPACE__:返回当前文件的命名空间的名称。
\