Maison  >  Article  >  développement back-end  >  Explication détaillée de l'utilisation de 9 variables superglobales prédéfinies en PHP

Explication détaillée de l'utilisation de 9 variables superglobales prédéfinies en PHP

怪我咯
怪我咯original
2017-07-13 10:33:301908parcourir

La plupart des variables prédéfinies en PHP sont "superglobales", ce qui signifie qu'elles sont disponibles dans toute la portée d'un script. Ils sont accessibles dans une fonction ou une méthode sans exécuter la variable globale $;.

Ces variables superglobales sont :

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $ _FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

Cet article présente principalement les super variables globales PHP 9

1 $_SERVER

La super variable $_SERVER contient celles créées par le. Informations sur le serveur Web, qui fournissent des informations sur les configurations du serveur et du client et sur l'environnement de requête actuel. Selon le serveur, la valeur et le nombre de variables dans $_SERVER seront différents, mais vous pouvez généralement trouver les variables définies dans la spécification CGI1.1. Ceux-ci incluent :

$_SERVER['HTTP_REFERER'] ; L'URL de la page qui a conduit l'utilisateur à l'emplacement actuel

$_SERVER['REMOTE_ADDR'] ; adresse ;

$_SERVER['REQUEST_URI'] ; La partie chemin de l'URL. Si l'URL est [url]http://www.example.com/blog/apache/index.html[/url], alors l'URI est /blog/apache/index.html.

$_SERVER['HTTP_USER_AGENT']; L'agent utilisateur du client fournit généralement des informations sur le système d'exploitation et le navigateur.

2. $_GET

$_GET super variable globale contient des informations sur les paramètres passés à l'aide de la méthode GET. Si l'URL de la requête est [url]http://www.example.com /index.html?cat=apache&id=157[/url], vous pouvez utiliser la super variable globale $_GET pour accéder aux variables suivantes :

$ _GET['cat'] = "apache";

$_GET['id'] = "157";

Par défaut, pour accéder aux variables passées via la méthode GET , $_GET Les variables super globales sont le seul moyen.

3. $_POST

La super variable globale $_POST contient des informations sur les paramètres passés par la méthode POST.

Le code est le suivant :

<form caction="subscribe.php" method="post">
  <p> Email address : <br>
    <input type="text" name="email" size="20" maxlength="so" value="">
  </p>
  <p> Password : <br>
    <input type="password" name="pswd" size="20" maxlength="15" value="">
  </p>
  <p>
    <input type="submit" name="subscribe" value="subscribe!">
  </p>
</form>

Grâce au script Subscribe.php, vous pouvez utiliser la Variable POST suivante :

$_POST[&#39;email&#39;] = " jason@example.com ";
$_POST[&#39;pswd&#39;] = "rainyday";
$_POST[&#39;subscribe&#39;] = "subscribe!";

Comme $_GET, par défaut, la variable superglobale $_POST est le seul moyen d'accéder aux variables POST.

4. $_COOKIE

La super variable globale $_COOKIE stocke les informations transmises au script via le cookie HTTP. Ces cookies sont généralement définis par un script PHP préalablement exécuté via la fonction PHP setcookie(). Par exemple, supposons que vous utilisiez setcookie() pour stocker un cookie nommé example.com avec la valeur ab2213. Cette valeur peut être obtenue ultérieurement en appelant $_COOKIE['example.com'].

5. $_FILES

La super variable $_FILES contient des informations sur les données téléchargées sur le serveur via la méthode POST. Cette super variable globale est différente des autres variables. C'est un tableau bidimensionnel contenant 5 éléments. Le premier indice marque le nom de l'élément File Upload du formulaire ; le deuxième indice est l'un des cinq indices prédéfinis qui décrivent un certain attribut du fichier téléchargé :

$_FILES[&#39;upload-name&#39;][&#39;name&#39;]; 从客户端向服务器上传文件的文件名;
$_FILES[&#39;upload-name&#39;][&#39;type&#39;]; 上传文件的MIME类型,这个变量是否赋值取决于浏览器的功能。
$_FILES[&#39;upload-name&#39;][&#39;size&#39;]; 上传文件的大小(以字节为单位);
$_FILES[&#39;upload-name&#39;][&#39;tmp_name&#39;]; 上传之后,将此文件移到最终位置之前赋予的临时名。
$_FILES[&#39;upload-name&#39;][&#39;error&#39;]; 上传状态码。尽管这个变量的名为 error ,但实际上在成功的情况下也会填写这个变量。它有五个可能的值:
UPLOAD_ERR_OK 文件成功上传
UPLOAD_ERR_INI_SIZE 文件大小超出了 upload_max_filesize 指令所指定的最大值。
UPLOAD_ERR_FORM_SIZE 文件大小超出了MAX_FILE_SIZE 隐藏表单域参数(可选)指定的最大值。
UPLOAD_ERR_PARTIAL 文件只上传了一部分
UPLOAD_ERR_NO_FILE 上传表单中没有指定文件

6. La super variable globale $_ENV

$_ENV fournit des informations sur l'environnement du serveur dans lequel PHP analyse. Les variables de ce tableau incluent :

$_ENV['HOSTNAME'] nom d'hôte du serveur

$_ENV['SHELL'] shell système

7. _REQUEST

$_REQUEST super variable globale est un outil polyvalent qui enregistre les variables transmises au script via diverses méthodes, notamment GET, POST et COOKIE. L'ordre de ces variables ne dépend pas de l'ordre dans lequel elles apparaissent dans le script d'envoi, mais de l'ordre spécifié par la directive de configuration variables_order. Il est recommandé d’utiliser cette super variable avec parcimonie car elle n’est pas suffisamment sûre.

8. La super variable $_SESSION

$_SESSION contient des informations relatives à toutes les sessions. L'enregistrement des informations de session vous offre la commodité de pouvoir les référencer sur tout votre site sans avoir à transmettre explicitement les données via GET ou POST.

9. $GLOBALS

$GLOBALS Le tableau de variables super globales peut être considéré comme un sur-ensemble de variables super globales, incluant toutes les variables de la portée globale. Exécutez le code suivant pour afficher toutes les variables dans $GLOBALS.

print &#39;<pre class="brush:php;toolbar:false">&#39;;  
 
print_r ($GLOBALS);  
 
print &#39;
';

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn