了解更多请访问https://www.runoob.com/php/php-superglobals.html
超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用。
一、PHP $GLOBALS
$GLOBALS 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问。
$GLOBALS 是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。
<?php$x = 75;$y = 25;function addition(){$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];}addition();echo $z;?>
以上实例中 z 是一个$GLOBALS数组中的超级全局变量,该变量同样可以在函数外访问。
二、PHP $_SERVER
$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。
<?phpecho $_SERVER['PHP_SELF'];//当前执行脚本的文件路径和文件名echo "<br>";echo $_SERVER['SERVER_NAME'];//执行当前文件所在服务器的主机名echo "<br>";echo $_SERVER['HTTP_HOST'];//请求当前头中的HOST项的内容,如果存在的话echo "<br>";echo $_SERVER['HTTP_USER_AGENT'];//用来检查浏览页面的访问者在用什么操作系统(包括版本号)浏览器(包括版本号)和用户个人偏好的代码echo "<br>";echo $_SERVER['SCRIPT_NAME'];//当前脚本的路径echo "<br>";echo $_SERVER['SERVER_ADDR'];//当前运行脚本所在的服务器的 IP 地址。echo "<br>";echo $_SERVER['REMOTE_ADDR'];//浏览当前页面的用户的 IP 地址。?>
三、PHP $_REQUEST
PHP $_REQUEST 用于收集HTML表单提交的数据。
<?php$name = $_REQUEST['name'];echo '通过超级全局变量 $_REQUEST 来收集表单中的 input 字段数据:'.$name;?><!doctype html><html lang="en"><head><meta charset="UTF-8"><title>PHP $_REQUEST</title></head><body><form action="" method="post">姓名:<input type="text" name="name"><input type="submit" value="提交"></form></body></html>
四、PHP $_POST
PHP $_POST 被广泛应用于收集表单数据,在HTML form标签的指定该属性:”method=”post”。
<?php$name = $_POST['name'];echo '通过超级全局变量 $_POST 来收集表单中的 input 字段数据:'.$name;?><!doctype html><html lang="en"><head><meta charset="UTF-8"><title>PHP $_POST</title></head><body><form action="" method="post">姓名:<input type="text" name="name"><input type="submit" value="提交"></form></body></html>
五、PHP $_GET
PHP $_GET 同样被广泛应用于收集表单数据,在HTML form标签的指定该属性:”method=”get”。
$_GET 也可以收集URL中发送的数据。
<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>PHP $_GET</title></head><body><a href="index.php?name=zhangsan">点我</a>//或者<form action="" method="get">姓名:<input type="text" name="name"><input type="submit" value="提交"></form><?php$name = $_GET['name'];echo '通过超级全局变量 $_GET 来收集表单中的 input 字段数据:'.$name;?></body></html>
六、PHP $_FILES
可以从客户计算机向远程服务器上传文件。
<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>PHP $_GET</title></head><body><form action="" method="post" enctype="multipart/form-data"><label for="file">文件上传:</label><input type="file" name="file" id="file" /><br /><input type="submit" name="submit" value="提交" /></form><?php//创建上传脚本if ($_FILES["file"]["error"] > 0){echo "错误信息: " . $_FILES["file"]["error"] . "<br />"; //由文件上传导致的错误代码}else{echo "Upload: " . $_FILES["file"]["name"] . "<br />"; // 被上传文件的名称echo "Type: " . $_FILES["file"]["type"] . "<br />"; // 被上传文件的类型echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; //被上传文件的大小,以字节计echo "Stored in: " . $_FILES["file"]["tmp_name"]; //存储在服务器的文件的临时副本的名称}?></body></html>
注意
<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 “multipart/form-data”。
<input> 标签的 type=”file” 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号