首页 > PHP教程 > PHP变量及数据类型

PHP预定义变量的使用

对于全部脚本而言,PHP 提供了大量的预定义变量,如$_GET,$_POST,$_SERVER,$_SESSION,$_COOKIE等

超全局变量是在全部作用域中始终可用的内置变量,无需执行 global $variable; 就可以访问。

在函数或类方法中,超全局变量不能被用作可变变量。

$GLOBALS — 引用全局作用域中可用的全部变量,包含了全部变量的全局组合数组。变量的名字就是数组的键。

$_SERVER 是一个包含了诸如头信息、路径、以及脚本位置等信息的数组。这个数组中的项目由 Web 服务器来创建,不同机器变量信息不一样。

$_GET 通过 URL 参数传递给当前脚本的变量的数组。GET 是通过 urldecode() 传递的。

1
2
3
<?php
echo 'Hello ' . htmlspecialchars($_GET["name"]) . '!';
?>

假设用户访问的是 http://example.com/?name=world

以上例程的输出类似于:

Hello world!

$_POST 通过 HTTP POST 方法传递给当前脚本的变量的数组。

1
2
3
<?php
echo 'Hello ' . htmlspecialchars($_POST["name"]) . '!';
?>

假设用户通过 HTTP POST 方式传递了参数 name=world

以上例程的输出类似于:

Hello world!

$_FILES 通过 HTTP POST 方式上传到当前脚本的项目的数组,常用于文件上传。

$_COOKIE 通过 HTTP Cookies 方式传递给当前脚本的变量的数组。

$_SESSION 当前脚本可用 SESSION 变量的数组。

$_REQUEST 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。

$_ENV 通过环境方式传递给当前脚本的变量的数组。 

$php_errormsg  前一个错误信息, 变量包含由 PHP 生成的最新错误信息。这个变量只在错误发生的作用域内可用,并且要求 track_errors 配置项是开启的(默认是关闭的)。

$HTTP_RAW_POST_DATA 包含 POST 提交的原始数据。一般而言,使用 php://input 代替 $HTTP_RAW_POST_DATA。

$http_response_header 数组与 get_headers() 函数类似。当使用HTTP 包装器时,$http_response_header 将会被 HTTP 响应头信息填充。$http_response_header 将被创建于局部作用域中。

$argc 传递给脚本的参数数目,包含当运行于命令行下时传递给当前脚本的参数的数目。脚本的文件名总是作为参数传递给当前脚本,因此 $argc 的最小值为 1。这个变量仅在 register_argc_argv 打开时可用。

1
2
3
<?php
var_dump($argc);
?>

当使用这个命令执行: php script.php arg1 arg2 arg3 

输出类似于:int(4)

$argv 传递给脚本的参数数组,包含当运行于命令行下时传递给当前脚本的参数的数组。 第一个参数总是当前脚本的文件名,因此 $argv[0] 就是脚本文件名。这个变量仅在 register_argc_argv 打开时可用。

1
2
3
<?php
var_dump($argv);
?>

当使用这个命令执行:php script.php arg1 arg2 arg3

输出类似于:

1
2
3
4
5
6
7
8
9
10
array(4) {
  [0]=>
  string(10) "script.php"
  [1]=>
  string(4) "arg1"
  [2]=>
  string(4) "arg2"
  [3]=>
  string(4) "arg3"
}

以上就是PHP预定义变量的使用的全部内容,欢迎大家学习。

PHP历史版本

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。