博客列表 >PHP 几个超级全局变量

PHP 几个超级全局变量

Lon
Lon原创
2021年10月25日 14:32:02837浏览

PHP 几个超级全局变量

了解更多请访问https://www.runoob.com/php/php-superglobals.html

超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用。

一、PHP $GLOBALS

$GLOBALS 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问。

$GLOBALS 是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

  1. <?php
  2. $x = 75;
  3. $y = 25;
  4. function addition()
  5. {
  6. $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
  7. }
  8. addition();
  9. echo $z;
  10. ?>

以上实例中 z 是一个$GLOBALS数组中的超级全局变量,该变量同样可以在函数外访问。

二、PHP $_SERVER

$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。

  1. <?php
  2. echo $_SERVER['PHP_SELF'];//当前执行脚本的文件路径和文件名
  3. echo "<br>";
  4. echo $_SERVER['SERVER_NAME'];//执行当前文件所在服务器的主机名
  5. echo "<br>";
  6. echo $_SERVER['HTTP_HOST'];//请求当前头中的HOST项的内容,如果存在的话
  7. echo "<br>";
  8. echo $_SERVER['HTTP_USER_AGENT'];//用来检查浏览页面的访问者在用什么操作系统(包括版本号)浏览器(包括版本号)和用户个人偏好的代码
  9. echo "<br>";
  10. echo $_SERVER['SCRIPT_NAME'];//当前脚本的路径
  11. echo "<br>";
  12. echo $_SERVER['SERVER_ADDR'];//当前运行脚本所在的服务器的 IP 地址。
  13. echo "<br>";
  14. echo $_SERVER['REMOTE_ADDR'];//浏览当前页面的用户的 IP 地址。
  15. ?>

三、PHP $_REQUEST

PHP $_REQUEST 用于收集HTML表单提交的数据。

  1. <?php
  2. $name = $_REQUEST['name'];
  3. echo '通过超级全局变量 $_REQUEST 来收集表单中的 input 字段数据:'.$name;
  4. ?>
  5. <!doctype html>
  6. <html lang="en">
  7. <head>
  8. <meta charset="UTF-8">
  9. <title>PHP $_REQUEST</title>
  10. </head>
  11. <body>
  12. <form action="" method="post">
  13. 姓名:<input type="text" name="name">
  14. <input type="submit" value="提交">
  15. </form>
  16. </body>
  17. </html>

四、PHP $_POST

PHP $_POST 被广泛应用于收集表单数据,在HTML form标签的指定该属性:”method=”post”。

  1. <?php
  2. $name = $_POST['name'];
  3. echo '通过超级全局变量 $_POST 来收集表单中的 input 字段数据:'.$name;
  4. ?>
  5. <!doctype html>
  6. <html lang="en">
  7. <head>
  8. <meta charset="UTF-8">
  9. <title>PHP $_POST</title>
  10. </head>
  11. <body>
  12. <form action="" method="post">
  13. 姓名:<input type="text" name="name">
  14. <input type="submit" value="提交">
  15. </form>
  16. </body>
  17. </html>

五、PHP $_GET

PHP $_GET 同样被广泛应用于收集表单数据,在HTML form标签的指定该属性:”method=”get”。

$_GET 也可以收集URL中发送的数据。

  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>PHP $_GET</title>
  6. </head>
  7. <body>
  8. <a href="index.php?name=zhangsan">点我</a>
  9. //或者
  10. <form action="" method="get">
  11. 姓名:<input type="text" name="name">
  12. <input type="submit" value="提交">
  13. </form>
  14. <?php
  15. $name = $_GET['name'];
  16. echo '通过超级全局变量 $_GET 来收集表单中的 input 字段数据:'.$name;
  17. ?>
  18. </body>
  19. </html>

六、PHP $_FILES

可以从客户计算机向远程服务器上传文件。

  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>PHP $_GET</title>
  6. </head>
  7. <body>
  8. <form action="" method="post" enctype="multipart/form-data">
  9. <label for="file">文件上传:</label>
  10. <input type="file" name="file" id="file" />
  11. <br />
  12. <input type="submit" name="submit" value="提交" />
  13. </form>
  14. <?php
  15. //创建上传脚本
  16. if ($_FILES["file"]["error"] > 0)
  17. {
  18. echo "错误信息: " . $_FILES["file"]["error"] . "<br />"; //由文件上传导致的错误代码
  19. }
  20. else
  21. {
  22. echo "Upload: " . $_FILES["file"]["name"] . "<br />"; // 被上传文件的名称
  23. echo "Type: " . $_FILES["file"]["type"] . "<br />"; // 被上传文件的类型
  24. echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; //被上传文件的大小,以字节计
  25. echo "Stored in: " . $_FILES["file"]["tmp_name"]; //存储在服务器的文件的临时副本的名称
  26. }
  27. ?>
  28. </body>
  29. </html>

注意

<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 “multipart/form-data”。

<input> 标签的 type=”file” 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议