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.数组遍历三种方式( ...
随机推荐
- Sublime远程连接Linux
1:Ctrl+Shift+P,输入install 选择红框框然后Enter 2:输入ftp,然后找到sftp,Enter 3:修改配置 修改账号密码信息远程路径之后 ...
- 第二章 C#语法基础 (2.2 C#语言的运算符和表达式)
[案例]本案例通过随机数发生器随机产生三条边,要求输出三天边长(边长长度为1~20的整数),并判断是否可以构成一个三角形. 如果可以,则计算出三角形面积,否则输出信息”三条随机的边不能构成三角形“. ...
- Excel技巧--单列变多行
当上图的单列转变成多行时,可以这么做: 1.在第一行输入A2.A3,向右拖拉第一行: 2.第二行按第一行最右顺序,写下A12,再向右拖拉出第二行: 3.选择这两行,再拖拉出一串连续顺序的多行来: 4. ...
- 解压zipfile & tarfile
def __un_zip(self, file_path): """解压.zip格式文件到同名目录下,若解压之前就存在该目录说明已解压,跳过解压过程,返回该目录" ...
- Js将数字转化为中文大写
function number_chinese(str) { var num = parseFloat(str); var strOutput = "", strUnit = '仟 ...
- Spring Bean生命周期详解
对象生命周期:创建(实例化----初始化)---使用----销毁,而在Spring中,Bean对象周期当然遵从这一过程,但是Spring提供了许多对外接口,允许开发者对三个过程(实例化.初始化.销毁) ...
- Oracle导出表数据与导入表数据dmp,以及导入导出时候常见错误
使用DOS 操作界面导出表数据,导入表数据(需要在数据库所在的服务器上边执行) exp UserName/Password@192.168.0.141/orcl file=d:\xtables.d ...
- linux 时间和时区设置
在linux中与时间相关的文件有 /etc/localtime /etc/timezone 其中,/etc/localtime是用来描述本机时间,而 /etc/timezone是用来描述本机所属的时区 ...
- canal 结合 kafka 入门
1.kafka的安装: 略 2.cannal 配置 使用卡夫卡: 修改 /home/admin/canal-server/conf/canal.properties 2.1 修改canal.ser ...
- leetcode20
public class Solution { Stack<char> S = new Stack<char>(); public bool IsValid(string s) ...