les variables

Une variable stocke une valeur de n'importe quel type, par exemple une chaîne, un nombre, un tableau, un objet ou une ressource. Une variable a un nom et une valeur et les valeurs de variables peuvent changer au cours d'un script. Pour mieux comprendre, une variable est juste une zone de stockage. Vous mettez des choses dans vos zones de stockage (variables) afin que vous puissiez les utiliser et les manipuler dans vos programmes.

Vous devez utilisez la syntaxe suivante pour définir une variable :

php$variable = valeur;

Vous devez suivre les règles de dénomination des variables lorsque vous définissez des variables dans PHP :

  • Le nom d'une variable doit commencer par le signe dollar ($).
  • Le premier caractère après le signe dollar ($) doit être une lettre (a-z) ou un trait de soulignement ( _ )
  • Les caractères restants peuvent être des traits de soulignement, des lettres ou des chiffres.

Les variables PHP sont sensibles à la casse. Cela signifie que les variables $abc et $AbC sont des variables complètement différentes. L'exemple suivant définit deux variables entières :

php$x = 10;
$y = 20;

Types de données

PHP est un langage de programmation faiblement typé. Cela signifie que lorsque vous définissez une variable, vous ne spécifiez pas son type de données. PHP sélectionne automatiquement un type de données approprié pour la variable en fonction de la valeur que vous lui attribuez. De plus, le type d'une variable change lorsque vous affectez différents types de valeurs.

php$x = 20;
$x = 'Ceci est une chaîne de caractères';

Premièrement, nous avons défini la variable $x comme un entier parce que nous avons assigné sa valeur à 20. Deuxièmement, nous avons assigné une chaîne littérale à $x, donc le type de données de $x est maintenant une chaîne de caractères au lieu d'un entier.

PHP fournit les types de données suivants :

  • Types de données scalaires: entier, flottant, chaîne et booléen.
  • Types de données composées : tableau et objet.
  • Types de données spéciaux: null et resource

Type casting

PHP gère automatiquement la conversion de type en fonction du contexte dans lequel vous utilisez les variables. Dans l'exemple suivant, PHP convertit une chaîne de caractères en nombre et utilise ce nombre pour le calcul.

php$x = 20;
$y = '10'; // une chaîne de caractères
$z = $x + $y; // $y est converti en un nombre entier
 
echo $z; // Affiche 30

Toutefois, pour des raisons de sécurité, il est recommandé de définir le type de données de la variable en fonction du type de données souhaité avant de l'utiliser. Pour forcer PHP à utiliser une variable comme type spécifique, vous mettez le nom du type de données désiré entre parenthèses avant la variable. C'est ce qu'on appelle le type casting.

php$x = 20;
$y = '10'; // une chaîne de caractères
$z = $x + (int)$y; // $y cast à un nombre entier
 
echo $z; // Affiche 30

Notez que le type de données de la variable $y ne change pas. Pour changer le type de données d'une variable, vous utilisez la fonction settype(), dont nous parlerons dans quelques secondes.

Recherche de types de données

PHP fournit une fonction intégrée gettype() qui retourne le type de données d'une variable. La fonction gettype() accepte une variable comme paramètre et renvoie son type de données. L'exemple suivant montre comment utiliser la fonction.

php$int = 10; // entier
$str = 'Ceci est une chaîne de caractères'; // chaîne de caractères
$bool = true; // booléen
$d = 3.14; // float
 
echo gettype($int), '‹br>';
echo gettype($str) , '‹br>';
echo gettype($bool), '‹br>';
echo gettype($d), '‹br>';

Changement du type de données

Pour changer le type de données d'une variable, vous utilisez la fonction settype(). Pour utiliser la fonction settype(), transmettez une variable que vous souhaitez modifier le type de données et le type de données souhaité.

php$f = 20.05;
echo $f . '‹br>'; // nombre flottant
 
settype($f, 'integer');
echo $f . '‹br>'; // 20 nombre entier
 
settype($f, 'string');
echo $f . '‹br>'; // '20' chaîne de caractères
 
settype($f, 'float');
echo $f . '‹br>'; // 20 nombre flottant

Tester les types de données

PHP fournit une liste de fonctions utiles qui vous permettent de tester les types de données des variables. Le tableau suivant illustre ces fonctions.

Nom de la fonctionSignification
is_int($var)Retourne true si $var est un entier, sinon retourne false.
is_string($var)Retourne true si $var est une chaîne de caractères, sinon retourne false.
is_bool($var)Retourne true si $var est un booléen, sinon retourne false.
is_float($var)Retourne true si $var est un flottant, sinon retourne false.
is_long($var)Retourne true si $var est un long type, sinon retourne false.
is_numeric($var)Retourne true si $var est un nombre, sinon retourne false.
is_double($var)Retourne true si $var est un double, sinon retourne false.
is_object($var)Retourne true si $var est un objet, sinon retourne false.
is_array($var)Retourne true si $var est un tableau, sinon retourne false.

Variable variables

PHP permet de référencer la valeur d'une variable dont le nom est stocké dans une autre variable.

php$foo = 'bar';
$$foo = 'cela est $bar';
 
echo $bar; // retourne cela est $bar

Tout d'abord, nous avons défini la variable $foo et lui avons assigné une chaîne littérale, bar. Ensuite, nous avons utilisé $foo et l'avons assigné à une autre chaîne littérale. $foo signifie bar et $foo signifie variable $bar; par conséquent, cette assignation a créé une nouvelle variable dont le nom est la valeur de la variable $foo qui est barre. Troisièmement, nous avons affiché la valeur de la variable $bar.

Variables set et unset

Lorsque nous attribuons une valeur à une variable, qu'il s'agisse d'une valeur littérale ou d'une autre variable, nous disons que la variable est définie. Vous pouvez vérifier si une variable est définie à l'aide de la fonction isset().

php$x; // $x n'est pas set
if (isset($x)) {
    echo '$x est set. ‹br/>';
} else {
    echo '$x est pas set. ‹br/>';
}
 
$y = 10; // $x est set
if (isset($y)) {
    echo '$y est set. ‹br/>';
} else {
    echo '$y est pas set. ‹br/>';
}

Pour désactiver une variable, il faut utiliser la fonction unset(). L'exemple suivant illustre comment utiliser la fonction unset().

php$x = 10; // $x est pas set
if (isset($x)) {
    echo '$x est set. ‹br>';
} else {
    echo '$x est pas set. ‹br>';
}
 
unset($x); // $x n'est plus disponible
if (isset($x)) {
    echo '$x est set. 
'; } else { echo '$x est pas set.
'; }

Vérification NULL et vide

Pour vérifier si une variable est NULL, il faut utiliser la fonction is_null().

php $x = null;
echo is_null($x) ? '$x est null' : '$x est pas null';
 
echo '‹br />';
 
$x = 20;
echo is_null($x) ? '$x est null' : '$x est pas null';

Pour vérifier si une variable est vide, utilisez la fonction empty(). Une variable est considérée comme vide si sa valeur est égale à false ou si elle n'existe pas. L'exemple suivant vous montre comment utiliser la fonction empty().

php$x = 0;
echo is_empty($x) ? '$x est vide' : '$x est pas vide';
 
$s = '';
echo is_empty($s) ? '$s est vide' : '$x est pas vide';

Portée d'une variable

La portée d'une variable détermine quelles parties du script peuvent y accéder. L'emplacement où la variable est définie détermine la portée d'une variable. Il existe quatre types de portée variable en PHP: local, global, static et les paramètres de fonction.

Variables locales

Une variable définie dans une fonction est locale à cette fonction. Cela signifie qu'une variable locale ne peut être accessible que par le code à l'intérieur de la fonction où elle est définie.

phpfunction foo()
{
    $bar = 10;
    //
    $bar += 20;
    return $bar;
}

La variable $bar est une variable locale dans la fonction foo(). Elle ne peut pas être accessible en dehors de la fonction foo().

Variables globales

Une variable déclarée en dehors d'une fonction a une portée globale ou est appelée variable globale. Une variable globale est accessible depuis n'importe quelle partie du programme. Cependant, par défaut, il n'est pas disponible à l'intérieur des fonctions. Pour faire référence à une variable globale à l'intérieur d'une fonction, il faut utiliser le mot-clé global lors de la déclaration d'une variable comme dans l'exemple suivant.

php$x = 20;
 
function test()
{
    global $x;
    echo $x; //20
}
 
test();

Super global variables

PHP fournit une liste de variables globales spéciales qui sont connues sous le nom de variables superglobales. Les variables superglobales fournissent des informations sur l'environnement du script PHP. Les variables super globales sont automatiquement disponibles dans n'importe quel fichier script PHP.

Ce qui suit est la liste des variables super globales :

  • $GLOBALS est un tableau qui contient des variables globales. Les noms de variables sont utilisés pour sélectionner la partie du tableau à laquelle accéder.
  • $_SERVER contient des informations sur l'environnement du serveur web.
  • $_GET contient des informations provenant des requêtes GET.
  • $_POST contient des informations provenant des requêtes POST.
  • $_COOKIE contient des informations provenant des cookies HTTP.
  • $_FILES contient des informations provenant du téléchargement de fichiers POST.
  • $_ENV contient des informations sur l'environnement du script.
  • La commande $_REQUEST contient les entrées utilisateur. Le $_GET ou $_POST devrait être utilisé au lieu de $_REQUEST car ils sont plus spécifiques.
  • $_SESSION contient les informations de toutes les variables enregistrées dans une session.

Variables statiques

Une variable statique conserve sa valeur entre les appels de fonction et n'est accessible qu'à l'intérieur de cette fonction. Vous utilisez le mot-clé static pour définir une variable statique.

phpfunction set_counter()
{
    static $counter = 0;
    $counter++;
    echo $counter . '‹br/>';
}
set_counter(); // 1
set_counter(); // 2
set_counter(); // 3

Tout d'abord, nous avons défini la fonction set_counter() avec une variable statique nommée $counter. Dans la fonction set_counter(), nous avons augmenté la valeur du compteur de 1 et l'avons affiché. Deuxièmement, nous avons appelé la fonction set_counter() trois fois. Chaque fois que nous appelons la fonction set_counter(), la valeur de $counter a été augmentée de 1; Vous pouvez remarquer que sa valeur est conservée dans les appels de fonction suivants.

Paramètres de fonction

Les paramètres de fonction sont locaux et ne peuvent être visibles qu'à l'intérieur de la fonction.

phpfunction to_html($str)
{
// code
}

Le $str est un paramètre de la fonction to_html(). Il n'est disponible que dans la fonction to_html().

Conventions de nommage

Voici les règles suivantes pour nommer une variable PHP.

  • Toutes les variables en PHP commencent par un signe $, suivi du nom de la variable.
  • Un nom de variable doit commencer par une lettre ou le caractère de soulignement _.
  • Un nom de variable ne peut pas commencer par un numéro.
  • Un nom de variable ne peut contenir que des caractères alphanumériques et des caractères de soulignement (A-z, 0-9 et _).
  • Un nom de variable ne peut pas contenir d'espaces.

Dans ce tutoriel, nous avons couvert beaucoup de choses sur les variables. Tout d'abord, nous avons commencé par vous montrer comment définir des variables et comment gérer les types de données variables. Ensuite, nous avons introduit quelques fonctions utiles qui traitent des variables. Enfin, nous avons discuté de quatre types de portée de variables en PHP.

les réactions

Pour laisser un avis, vous devez être inscrit et connecté

Se connecter