超全局变量
$_GET/$_POST/$_SERVER/$_SESSION/$_COOKIE 等超全局数组
超全局变量
PHP 提供了 9 个超全局(superglobal)变量——在任何作用域都能访问。它们是 Web 开发的核心通道。
学完本章你将: 掌握 $_GET/$_POST/$_SERVER/$_SESSION/$_COOKIE 等。
速查表
php
<?php
// 1. $_GET — URL 查询参数
// 2. $_POST — POST 表单数据
// 3. $_SERVER — 服务器和执行环境信息
// 4. $_SESSION — 会话数据
// 5. $_COOKIE — Cookie 值
// 6. $_REQUEST — GET+POST+COOKIE 合并(不推荐依赖)
// 7. $_FILES — 上传的文件
// 8. $_ENV — 环境变量
// 9. $GLOBALS — 所有全局变量的引用
$_SERVER 常用值
php
<?php
echo $_SERVER['PHP_SELF']; // 当前脚本路径
echo $_SERVER['SERVER_NAME']; // 主机名
echo $_SERVER['REQUEST_METHOD']; // GET/POST
echo $_SERVER['HTTP_USER_AGENT']; // 浏览器 UA
echo $_SERVER['REMOTE_ADDR']; // 客户端 IP
echo $_SERVER['REQUEST_URI']; // 请求 URI(含查询参数)
安全的参数访问
php
<?php
// ❌ 未检查直接使用——可能触发警告
$page = $_GET['page'];
// ✅ 先检查是否存在
$page = $_GET['page'] ?? 1; // null 合并
$page = isset($_GET['page']) ? $_GET['page'] : 1;
// ✅ 过滤输入
$page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT) ?: 1;