实习记录(一)--php超全局变量$_GET

php超全局变量问题

———-

首先 重要的事情说三遍:
超全局变量是数组!

超全局变量是数组!!

超全局变量师叔祖!!!!

———-

(1)全局变量与局部变量

php中的变量分为:
- 局部变量
- 全局变量
- 超全局变量

其中,局部变量只在函数内部有人认识,除了函数的花括号{ //巴拉巴拉 }之外,就无法调用。
而全局变量,个人感觉应该叫伪全局变量,因为这个和java中的变量定义有所不同,它在花括号内部的花括号默认是不可见的,如果想在内部的花括号内(即函数内)使用全局变量,需要使用关键字global来声明一下,哪里来的全局之意。
<?php
$a = 11111;
function testGlobal() {
echo $a; //会报错哦,哼
global $a = 0;
echo $a; //结果为0
}
?>

(2)超全局变量

而超全局变量则不同,它在脚本域内都是可用的,而且不用定义,已经规定好了包含的类型:

  • $_GET
  • $_POST
  • $_REQUEST
  • $_SERVER
  • $_ENV
  • $_FILE
  • $_COOKIE
  • $_SESSION
  • $GLOBAL(注意:这个变量没有下划线)
    然而,为什么要规定这些呢,当然是为了开发人员提供方便啦,另外,他还可以完成其他的功能。
其中,有几个小技巧:
  • 直接打印超全局变量可以看到其中到底有什么内容和其中的参数
<?php
    echo '$_GET';
?>
  • 可以直接向超全局变量中加入自己定义的参数并赋值,但是一个脚本文件对 GEThttpapacheapachephp _GET数组,而当一个脚本结束以后,那些调用和传递的数据都会消失,所以当另一个脚本执行时,上一个自定义的参数会消失不见,自然无法使用,啦啦啦。
<?php
    $_GET["lalala"] = "nber";
    echo "$_GET["lalala"]";
?>

================================

今天内容=>$_GET

======================

$_GET:通过 url参数 传递给当前脚本变量的 数组


哎呀,什么是url参数?
这里写图片描述

来来来,标注的部分中,“?”后面的就是url参数
https://www.baidu.com/s
?ie=utf8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=php&……

其中,每个参数用&来隔开,其中ie啊,f啊,rsv_dp啊就是url参数


也就是说,当浏览器发送一个get请求的时候,会在url中加上参数,而$_GET就是用来储存这些参数的数组,但是这种方式传递参数明显不安全,解决办法是使用POST变量。

$_GET基本用法

  1. 浏览器通过超链接发送的数据
  2. 提交表单得到的数据(但是最好还是用POST)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值