预定义变量| 学习笔记

简介: 快速学习预定义变量。

开发者学堂课程【PHP 基础入门课程(上) :预定义变量】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/709/detail/12585


预定义变量

 

内容介绍

一、概念

二、步骤

三、示例

四、小结

 

首先思考一个这样的问题,外网2.0最典型的一个特点就是一个交互,就是可以服务器根据用户的选择来进行数据的有效性提供,那么浏览器会通过数据提交之后,才可以知道怎么去选择。

提问:浏览器用户提交的数据应该怎么进行访问呢?

答案:预定义变量。

所以这一节的目标是了解常见的预定义变量的含义,以后在运用的时候可以直接找到。

 

一、概念

预定义变量: PHP 系统内部定义的变量,也是 PHP 系统自动收集的数据结果,有很多的预定义变量,在这里可以直接去使用,不需要自己去定义。

·预定义变量也是变量,符合变量规则

·预定义变量都是数组(数据组合,有多个数据在一起)

·系统提供了9个预定义变量,每个变量都有自己特定的数据

$_GET:用户通过 get 方式提交的数据。

$_POST:用户通过 post 方式提交的数据。

$_REQUEST:用户通过 get 和 post 提交的数据

以上三个需要数据提交,S_SERVER 不需要数据提交,因为它可以自动收集。

S_SERVER:用户和服务器的基本信息数据(数据的名字不由开发者控制,系统定义好)

7 $num - 10;

8

9 #访问变量

10 echo $num;

11

12 #修改变量

13‘hello $mum;

14 echo $num;

15

16#删除变量

17 unset($num);

18

19 // echo $num;

20

21 $3name= bird';#错误

22 $a = 10;

23 $A = 100

24 //echo $a,$A;

25//

26

27 #预定义变量

28 echo’<pre>’;

29 print_r($_SERVER);

就在这个下面直接找一下,把它注释掉,然后来看一下这个所谓的一个预定义变量27,那么这个地方给大家提供一种结构叫做 print_r ,然后我们把 ($_SERVER)变量名给它放进去并且保存一下,它会打印这个结果和一个基本的一个类型。

来看一下浏览器刷新一下发现有好多东西,并且非常不清,所以所也提供这样的一个东西。

如果想要保留一种结构的输出, echo 有一个特性是它有一个标签 pre ,这个标签就是让浏览器解析的时候也按照结构把它显示出来,注意的是输出半个就可以了,浏览器会自动去识别。

回到浏览器刷新一下,因为发现此时看到这也是代表它的一个类型,然后这个地方说有一个指向的一个关系名字跟值,然后里面有好多的内容有好多的内容,有些东西是需要去知道的。

比如说像你看服务器的根目录都来了,然后还有什么协议、方式、请求的文件。这些东西都可以在里面去找到,以后可以用这个东西,所以这个用的比较多。

回到笔记这是 S_SERVER 再看下一个 $_FILES ,这是用户提交的文件数据,通常这个地方涉及到的就是文件上传。

$_FILES:用户提交的文件数据(文件上传)

S_SESSION:session 数据

$_COOKIE:cookie 数据

SGLOBALS:所有全局变量,也是唯一一个不是以下划线开始的预定义变量

$_ENV:环境数据(用的很少)

 

二、步骤

1、明确需要的数据在哪个预定义变量中,明白当前需要什么数据,需要访问什么数据,比如说用户是用 GET 上传的,就需要用 GET 这个变量来选择,所以说当确定数据在哪个变量中,就可以直接使用了,当然在实际使用的时候需要去了解数组的相关信息,这样才能知道怎么去使用。

2、使用预定义变量访问。

 

三、示例

#想要获取来访者的 IP 地址:

在 $_SERVER 中,使用 REMOTE_ADDR 保存 echo $_SERVER['REMOTE_ADDR'];

server 里面刚刚看到了有很多的内容,然后如果我想用里面的某一个的话怎么办呢?它前面是不是有名字跟值?

我要的肯定是值,那么这个时候可以通过名字来取,比如说这个地方有一个叫做 remote 的 addr ,所以找一下 -Remote Addr Server 的服务器,这种的话通常就代表的是本机,冒号冒号一代表是本机,说明当前的浏览器和服务器都是在我本地来进行一个访问的,这就是预定义变量,最后我们小结一下预定义变量是谁提供的?系统提供的。所以不需要管它。


四、小结

1、预定义变量是 PHP 系统保存的一些常用变量,方便开发者使用

2、预定义变量都是数组,需要以数组方式使用

3、预定义变量不需要特别记忆,但是对于常用的有所了解

·S_GET: get 方式提交的数据(与表单和 URL 对应)

·$_POST: post 方式提交的数据(与表单对应)

·$_SERVER:外部变量的获取,里面有很多,需要多了解一下。

这就是预定义变量,在后面用到的时候在进行详细的讲解。

相关文章
|
2天前
|
云安全 数据采集 人工智能
古茗联名引爆全网,阿里云三层防护助力对抗黑产
阿里云三层校验+风险识别,为古茗每一杯奶茶保驾护航!
古茗联名引爆全网,阿里云三层防护助力对抗黑产
|
6天前
|
人工智能 中间件 API
AutoGen for .NET - 架构学习指南
《AutoGen for .NET 架构学习指南》系统解析微软多智能体框架,涵盖新旧双架构、核心设计、技术栈与实战路径,助你从入门到精通,构建分布式AI协同系统。
305 142
|
2天前
|
存储 机器学习/深度学习 人工智能
大模型微调技术:LoRA原理与实践
本文深入解析大语言模型微调中的关键技术——低秩自适应(LoRA)。通过分析全参数微调的计算瓶颈,详细阐述LoRA的数学原理、实现机制和优势特点。文章包含完整的PyTorch实现代码、性能对比实验以及实际应用场景,为开发者提供高效微调大模型的实践指南。
405 0
|
3天前
|
传感器 人工智能 算法
数字孪生智慧水务系统,三维立体平台,沃思智能
智慧水务系统融合物联网、数字孪生与AI技术,实现供水全流程智能监测、预测性维护与动态优化。通过实时数据采集与三维建模,提升漏损控制、节能降耗与应急响应能力,推动水务管理从经验驱动迈向数据驱动,助力城市水资源精细化、可持续化管理。
267 142
|
2天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段四:学术分析 AI 项目 RAG 落地指南:基于 Spring AI 的本地与阿里云知识库实践
本文介绍RAG(检索增强生成)技术,结合Spring AI与本地及云知识库实现学术分析AI应用,利用阿里云Qwen-Plus模型提升回答准确性与可信度。
204 90
AI 超级智能体全栈项目阶段四:学术分析 AI 项目 RAG 落地指南:基于 Spring AI 的本地与阿里云知识库实践
|
17天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
2天前
|
机器学习/深度学习 人工智能 运维
智能照明稳压节能控制器,路灯节能稳压系统,沃思智能
智能照明调控柜集电力分配、远程控制与能耗管理于一体,支持自动调光、场景切换与云平台运维,广泛应用于市政、商业及工业领域,显著节能降耗,助力智慧城市建设。
184 137
kde
|
2天前
|
人工智能 关系型数据库 PostgreSQL
n8n Docker 部署手册
n8n是一款开源工作流自动化平台,支持低代码与可编程模式,集成400+服务节点,原生支持AI与API连接,可自托管部署,助力团队构建安全高效的自动化流程。
kde
266 3

热门文章

最新文章