超级全局变量

$GLOBALS
$GLOBALS是一个包含了全部变量的全局变量组合数组,变量名即为数组的键

$x = 10;
$y = 9;
function fun_1(){
  $GLOBALS["z"] = $GLOBALS[‘x‘] + $GLOBALS["y"];
}
fun_1();
echo($z);
//可以在函数内外访问


$SERVER
$_SERVER[‘SERVER_ADDR‘]    //当前运行脚本所在的服务器的 IP 地址。
$_SERVER[‘PHP_SELF‘]        //当前执行脚本的文件名

PHP $_POST
预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值。
从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。
*然而,默认情况下,POST 方法的发送信息的量最大值为 8 MB(可通过设置 php.ini 文件中的 post_max_size 进行更改)。

何时使用 method="post"?
从带有 POST 方法的表单发送的信息,对任何人都是不可见的,并且对发送信息的量也没有限制。
然而,由于变量不显示在 URL 中,所以无法把页面加入书签。

在HTML form标签的指定该属性:”method="post"<form method="post" action="<?php echo $_SERVER[‘PHP_SELF‘];?>">
  <input type="text" name="user_name">
  <br>
  <input type="password" name="pwd">
  <br>
  <button type="submit">submit</button>
</form>

<?php
  $name = $_POST[‘user_name‘];
  $pwd = $_POST[‘pwd‘];
  echo($name . " ++ " . $pwd);
?>

PHP $_GET
在 PHP 中,预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。在HTML form标签的指定该属性:"method="get"。
$_GET 也可以收集URL中发送的数据。

从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。

何时使用 method="get"?
在 HTML 表单中使用 method="get" 时,所有的变量名和值都会显示在 URL 中。
*所以在发送密码或其他敏感信息时,不应该使用这个方法!
然而,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。
*HTTP GET 方法不适合大型的变量值。它的值是不能超过 2000 个字符的。

<form method="get" action="<?php echo $_SERVER[‘PHP_SELF‘];?>">
  <input type="text" name="user_name">
  <br>
  <input type="password" name="pwd">
  <br>
  <button type="submit">submit</button>
</form>

<?php
  $name = $_GET[‘user_name‘];
  $pwd = $_GET[‘pwd‘];
  echo($name . " ** " . $pwd);
?>

$_REQUEST
预定义的 $_REQUEST 变量包含了 $_GET、$_POST 和 $_COOKIE 的内容。
$_REQUEST 变量可用来收集通过 GET 和 POST 方法发送的表单数据。
<form method="post" action="<?php echo $_SERVER[‘PHP_SELF‘];?>">
//action=“<?php $_SERVER[‘PHP_SELF‘] ?>“    //当前执行脚本的文件名
//action=“index.php”
//action=“<?php __FILE__ ?>”    //文件的全路径
  <input type="text" name="user_name">
  <br>
  <input type="password" name="pwd">
  <br>
  <button type="submit">submit</button>
</form>

<?php
  $name = $_REQUEST[‘user_name‘];
  $pwd = $_REQUEST[‘pwd‘];
  echo($name . " -- " . $pwd);
?>

避免 $_SERVER["PHP_SELF"] 被利用

<form method="post" action="<?php htmlspecialchars($_SERVER[‘PHP_SELF‘]) ?>">


 
时间: 2024-08-06 23:06:10

超级全局变量的相关文章

PHP超级全局变量、魔术变量和魔术函数

PHP在设计的时候已经预定义了9个超级全局变量.8个魔术变量和13魔术函数,这些变量和函数可以在脚本的任何地方不用声明就可以使用. 在PHP开发会频繁的使用这些变量和函数,这些变量和函数可以方便的帮我们解决很多问题.下面详细的讲解下PHP中的超级全局变量.魔术变量和魔术函数. PHP超级全局变量(9个) $GLOBALS 储存全局作用域中的变量 $_SERVER 获取服务器相关信息 $_REQUEST 获取POST和GET请求的参数 $_POST 获取表单的POST请求参数 $_GET 获取表单

PHP 超级全局变量

超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用. 你不需要特别说明,就可以在函数及类中使用. PHP 超级全局变量列表: $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION PHP $GLOBALS $GLOBALS 是PHP的一个超级全

php 基础之 php里的超级全局变量 --4.23

// php里的超级全局变量 $num =  99; function t() {    echo $num;} // 在这个调用过程 , $num为null,因为函数内部没有定义$num// 且在PHP中,并不会像js一样,尚着作用域往外寻找t(); // 在PHP中,有一类特殊的变量,叫做超级全局变量.// 不管你的在函数中,还是在类内部,也不管代码包装了多深.// 都能够访问到该变量. function s() {    echo $_GET['title'];} s();

PHP_006 超级全局变量

超级全局变量 PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用. 你不需要特别说明,就可以在函数及类中使用. PHP 超级全局变量列表: $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION $GLOBAL $GLOBAL 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问. $GLOBAL 是一个包含了全部变量的全局组合数组

PHP中的超级全局变量

PHP内置了一些超级全局变量,我们可以在脚本的任何地方使用和可见,下面记录一下这些全局变量的作用: 1.$_SERVER $_SERVER超级全局变量包含由web服务器创建的信息,它提供了服务器和客户配置及当前请求环境的有关信息.根据服务器不同,$_SERVER中的变量值和变量个数会有差别,不过一般都可以找到CGI1.1规范中定义的变量.其中包括: $_SERVER[ 'HTTP_REFERER' ] ; 引导用户到达当前位置的页面的URL : $_SERVER[ 'REMOTE_ADDR' ]

PHP超级全局变量总结

silicon1985 的 重要的PHP超级全局变量总结 PHP有9个预定义变量数组,分别总结如下: 1.$_SERVER $_SERVER超级全局变量包含由web服务器创建的信息,它提供了服务器和客户配置及当前请求环境的有关信息.根据服务器不同,$_SERVER中的变量值和变量个数会有差别,不过一般都可以找到CGI1.1规范中定义的变量.其中包括: $_SERVER[ 'HTTP_REFERER' ] ; 引导用户到达当前位置的页面的URL : $_SERVER[ 'REMOTE_ADDR'

PHP利用超级全局变量$_GET来接收表单数据。

我们在linux上用 touch php_get.html php_get.php创建两个文件. php_get.html文件的代码如下: 1 <!doctype html> 2 <html> 3 <head> 4 <title>超级全局变量$_GET来接收提交的数据,然后返回信息</title> 5 <meta http-equiv="contnet-type" content="text/htm"

php超级全局变量

超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. PHP 超级全局变量 PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用. 你不需要特别说明,就可以在函数及类中使用. PHP 超级全局变量列表: $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION 本章节我们将讲解几个常用的超级全局变量,其

php学习笔记-超级全局变量

超级全局变量,超级在哪里呢?相对于global类型的变量,超级全局变量的作用域是没有限制的,函数外.函数内.随便一个PHP文件都可以引用超级全局变量.在PHP中有很多超级全局变量, 常用的有_SERVER GLOBALS _POST _GET _COOKIE _SESSION  _FILES _SERVER是一个关联数组,我们可以用如下代码输出这个数组的所有的key-value 1 <?php 2 3 foreach($_SERVER as $key =>$value) 4 { 5 6 ech

超级全局变量列表

$GLOBALS 全局变量数组(就像global关键字,这将允许一个函数内部访问全局变量)    $_SERVER 服务器环境变量数组    $_REQUEST 所有用户输入的变量数组,包括$_GET.$_POST.$_COOKIE所包含的输入内容    $_POST 通过POST方法传递给该脚本的变量数组    $_GET 通过GET方法传递给该脚本的变量数组    $_FILES 与文件上传相关的变量数组    $_ENV 环境变量数组    $_COOKIE cookie变量数组    $