Heim > Artikel > Backend-Entwicklung > Was sind die globalen Arrays in PHP?
Es gibt 9 globale Arrays in PHP: 1. „$GLOBALS“ ist ein Array, das aus allen definierten globalen Variablen besteht. 2. „$_SERVER“ ist ein Array, das Header-Informationen, Pfade und Skriptspeicherorte enthält. , ein Array bestehend aus Sitzungsdaten; 4. „$_GET“ 5. „$_ENV“ usw.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer
php globales Array
php globales Array Der vollständige Name lautet „Superglobal Array“ oder „Superglobal Variable“. , Das heißt, die speziell definierten Array-Variablen in PHP werden als superglobale Arrays bezeichnet, da auf diese Arrays überall im Skript und in jedem Bereich, z. B. Funktionen, Klassen, Dateien usw., zugegriffen werden kann.
Superglobale Array-Variablen sind integrierte Variablen, die immer in allen Bereichen verfügbar sind.
Das superglobale Array in PHP umfasst die folgenden 9:
$GLOBALS: Enthält einen Verweis auf jede Variable, die im globalen Variablenbereich des aktuellen Skripts gültig ist. Die Schlüsselnamen dieses Arrays sind die Namen globaler Variablen.
$_SERVER: Serverbezogene Informationen anzeigen oder abrufen;
$_GET: Diese Methode muss $_GET sein: Über das Formular Die gesendeten Daten müssen im POST-Modus erfolgen.
$_REQUEST: Enthält die beiden oben genannten Datenübertragungsmethoden (POST und GET).
$_COOKIE: Verarbeitet die Sitzungsdaten des Clients Die Server -Session -Daten; ?? Charaktere, wie kann man es lösen? URL-Code und URL-Decode.
<meta> //注意:信息如何传递!!! <a>数据</a>
<meta> <?php echo "<pre class="brush:php;toolbar:false">"; echo print_r($_GET); echo ""; echo $_GET['name']; ?>
Verwendung 2: Der Browser sendet Informationen über ein Formular an den Server (am besten verwenden Sie $_POST)
<meta> <?php $city=urlencode("大西安"); echo "<a href='1.php?city={$city}&name=tan'>数据"; ?>
<meta> <?php echo "<pre class="brush:php;toolbar:false">"; echo print_r($_GET); echo ""; echo urldecode($_GET['city']); ?>
Register_globals deaktivieren: set register_globals=off;
<meta>
Der Unterschied zwischen der POST-Methode und der GET-MethodeDie POST-Methode bietet eine gute Sicherheit
Größe der Datenübertragung (POST-Methode groß)<meta>
<meta> "; //如何接收checkbox的所有数据(注意中括号[]):唱歌 echo print_r($_POST); echo ""; $hobbies=$_POST['hobby']; foreach($hobbies as $key=>$val){ echo "
Unterscheiden Sie zwischen GET und POST über $_SERVER['REQUEST_METHOD']
<meta>
超链接
$_ENV
获取服务器端的环境变量,通过修改php.ini的variables_order="EGPCS"启动。
$_ENV数组中的内容是在PHP解析器运行时,从PHP所在服务器中的环境变量转变为PHP全局变量的。它们中许多都是由PHP所运行的系统决定的,完整的列表是不可能的,需要查看PHP所在服务器的系统文档以确定其特定的环境变量。
$GLOBALS
$GLOBALS是由所有已定义的全局变量组成的数组,变量名就是该数组的索引。
包含了全部变量的全局组合数组。
<meta> "; print_r($GLOBALS); echo ""; ?>
$_FILES
使用表单的file输入域上传文件时,必须使用post提交。但在服务器文件中,并不能通过$_POST超全局数组获取到表单中file域的内容。而$_FILES超全局变量是通过post方法传递的已上传文件项目组成的数组。$_FILES是一个二维数组,包含5个子数组元素,其中第一个下标是表单中file输入域的名称,第二个下标用于描述上传文件的属性。
$_COOKIE
$_COOKIE超全局数组是经由HTTP Cookies方法提交至脚本的变量。通常这些Cookies是由以前执行的PHP脚本通过setCookies()函数设置到客户端浏览器中的,当PHP脚本从客户浏览器提取了一个cookie后,它将自动把它转换成一个变量,可以通过这个$_COOKIE超全局数组和cookie的名称来存取指定的cookie值。
$_SESSION
会话控制是在服务器端使用session跟踪用户,当服务器页面中使用session_start()函数开启session后,就可以使用$_SESSION数组注册全局变量,用户就可以在整个网站中访问这些会员信息。
说明:$_COOKIE、$_SESSION、$_REQUEST的区别
在 PHP 中,cookie 就是服务器,它是留在客户端(浏览器)上的一个小的数据文件,通常用于标识用户信息,也称为浏览器缓存或 Cookies。
$_COOKIE[] 全局数组存储了通过 HTTP COOKIE 传递到脚本的信息,PHP 可通过 setcookie() 函数设置 COOKIE 的值,用 $_COOKIE[] 数组接收 COOKIE 的值,$_COOKIE[] 数组的索引为 COOKIE 的名称。
session 是一种客户与网站(服务器)更为安全的对话方式,一旦开启了 session 会话,便可以在网站的任何页面使用(保持)这个会话,从而让访问者与网站之间建立了一种“对话”机制。但是 session 不同于 cookie,必须先启动,才能生效。
$_SESSION[] 数组用于获取会话变量的相关信息。
$_REQUEST 支持 $_GET 和 $_POST 发送过来的请求,即 get 和 post 它都可以接受,浏览器地址栏中的数据显示不显示要看传递的方法,get 会显示在 url 中(有字符限制),post 不会显示在 url 中,可以传递任意多的数据(只要服务器支持)。
默认情况下,$_REQUEST[] 数组包含了 $_GET、$_POST 和 $_COOKIE 的数组。
推荐学习:《PHP视频教程》
Das obige ist der detaillierte Inhalt vonWas sind die globalen Arrays in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!