PHP开发——超全局数组变量
概述
l JS中的变量分两类:局部变量、全局变量。
l PHP中的变量分三类:局部变量、全局变量、超全局变量。
l 局部变量:在函数内部声明的变量,就是局部变量。函数执行完毕,局部变量就消失了。
l 全局变量:在函数外部声明的变量,就是全局变量。
在PHP中,全局变量,在函数中不能用。网页执行完毕,全部变量才会消失。
l 超全局变量:是系统定义的超全局变量。
该变量可以在任何地方直接使用,主要是函数内部、函数外部、类的内部、类的外部。
PHP中的超全局数组变量有哪些?
$_GET:主要用来获取 HTTP GET方式传递的数据。
$_POST:主要用来获取 HTTP POST方式传递的数据。
$_REQUEST:主要用来获取GET和POST方式传递的数据,但是速度比较慢。
$_SERVER:主要用来获取服务器执行环境的相关信息。如:客户端IP地址、网站根目录。
$_GLOBALS:主要包含$_GET、$_POST、$_COOKIE数组的内容。
$_SESSION:主要获取服务器端的会话信息。
$_COOKIE:主要获取客户端的会话信息。
$_FILES:主要获取上传文件的相关信息。
$ENV:获取环境信息(不常用)。
$_POST
描述:主要用来获取HTTP POST方式传递到服务器端的数据。
POST方式的特点:
相对安全。数据不在地址栏显示。
可以发送海量数据。
可以发送所有类型的文件:word、excel、ppt、jpeg、rar、wmv等。
$_GET
$_GET主要用来获取 HTTP GET方式发送到服务器的数据。
GET方式的特点:
不安全。所有数据都在地址栏显示了,包含密码。
不能发送海量数据,只能发送少量的数据。主要是浏览器软件的限制。
只能发送字符串型数据,附件无法发送。
发送GET数据的方法总结:
可以在地址栏直接输入参数
通过<a>标记向服务器发送GET数据
通过JS的location.href来发送GET方式
表单发送GET数据
$_REQUEST
$_REQUEST全局数组,包含了$_GET、$_POST、$_COOKIE数组的内容。
虽然$_REQUEST可以获取GET或POST提交的数据,但速度比较慢。
$_SERVER
$_SERVER可以获取环境执行环境的相关信息
PHP开发——超全局数组变量的更多相关文章
- PHP学习1.5-预定义超全局数组变量
1.PHP 预定义的超全局变量数组 特性: a.特殊的数组,操作方式没有区别 b.不用声明,php脚本中默认存在,因为在php中不用定义,所以在自定义变量是应避免和预定的全局变量同名 c.在全局范围内 ...
- PHP 预定义超全局数组/变量
1.超全局变量:不用定义声明即可用.PHP有九种 2.$_GET:通过参数传递给当前脚本的变量的数组 浏览器页面-->(http协议)->apache-->php module--& ...
- php超全局数组变量
(1)$_SERVER 服务器的相关信息 (2)$_GET 接收用户通过url向服务器传的参数 $POST 接收用户通过http协议向服务器传递的参数 发送get请求 <a href=&quo ...
- PHP中预定义超全局数组(变量)
PHP中许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用.超全局变量除了具有全局变量特点外,在函数或方法中无需执行global $variable:就可以访问它们. 提供超全 ...
- php学习笔记 [预定义数组(超全局数组)]
<?php 预定义数组: * 自动全局变量---超全局数组 * * 1.包含了来自WEB服务器,客户端,运行环境和用户输入的数据 * 2.这些数组比较特别 * 3.全局范围内自动生效,都可以直 ...
- $_GLOBALS超全局数组和global定义的全局变量区别?
全局变量:主程序中定义的变量(函数外部),只能在主程序中使用,在函数内部不能调用 背景:解决在函数内部调用全局变量的问题 解决方法: 1.在函数内部声名全局变量 <?php public $va ...
- 2016/3/20 数组定义 数组遍历 超全局数组 数组元素设置(in_array() 、array_reverse()、count()、array_unique()、unset()、array_values、array_merge、array_push) 列表实例
一.数组定义 php数组与其他语言的数组的不同: 其他例如java语言 :同一种类型数据的集合. php:数组可以存储任何类型的数据.同一个数组中可以放int类型也可以放string类型 ①索引数组的 ...
- PHP基础-PHP中预定义的超全局数组
预定义数组: 自动全局变量---超全局数组 1. 包含了来自WEB服务器,客户端,运行环境和用户输入的数据 2. 这些数组比较特别 3. 全局范围内自动生效,都可以直接使用这些数组 4. 用户不能自定 ...
- php课程 4-15 数组遍历、超全局数组、表单提交数据(多看学习视频)
php课程 4-15 数组遍历.超全局数组.表单提交数据(多看学习视频) 一.总结 一句话总结:超全局数组特别有用,比如$_SERVER可以获取所有的客户端访问服务器的情况. 1.数组遍历三种方式( ...
随机推荐
- 【python】Numpy中stack(),hstack(),vstack()函数详解
转自 https://blog.csdn.net/csdn15698845876/article/details/73380803 这三个函数有些相似性,都是堆叠数组,里面最难理解的应该就是stack ...
- Github访问速度慢和下载慢的解决方法
原因 为什么访问速度慢.下载慢?github的CDN被某墙屏了,由于网络代理商的原因,所以访问下载很慢.Ping github.com 时,速度只有300多ms. 解决方法 绕过dns解析,在本地直接 ...
- MySQL 大数据备份方案之Percona XtraBackup
Xtrabackup介绍 1.Xtrabackup是什么 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbacku ...
- django 分页和中间件
分页 Django的分页器(paginator) view from django.shortcuts import render,HttpResponse # Create your views h ...
- Android Studio计时跳转或点击跳转至主页面
这个总体来说是比较简单的,计时跳转一般调用Android Studio中的Handler方法. 一.发生点击事件跳转页面 mBtnTextView = (Button) findViewById(R. ...
- Oracle 学习笔记 (七)
一.数据库的启动 启动数据库的三个阶段: nomount, mount,open mount 阶段:. 1.读参数文件 2.分配内存 3.启动后台进程 4.初始化部分v$视图 mount 阶段: 读参 ...
- Android 开发 VectorDrawable 矢量图 (三)矢量图动画
VectorDrawable 矢量图 三部曲: Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图 Android 开发 VectorDrawabl ...
- Xeon Phi 《协处理器高性能编程指南》随书代码整理 part 3
▶ 第二章,几个简单的程序 ● 代码,单线程 #include <stdio.h> #include <stdlib.h> #include <string.h> ...
- Android Room 学习(一)
Room简介 Room persistence库为SQLite提供了一个抽象层,以便在利用SQLite的全部功能的同时实现更强大的数据库访问. 该库可帮助您在运行应用程序的设备上创建应用程序数据的缓存 ...
- python 字符串和字节数互转
在 python 中字符 是 str 类型, 字节是 bytes 类型 b = b'hello' # bytes 字节 s= 'hello' # str 字符串 可通过 type() 检查是什么类型 ...