PHP - Types de variables

La principale façon de stocker des informations au milieu d'un programme PHP est d'utiliser une variable.

Voici les choses les plus importantes à savoir sur les variables en PHP.

  • Toutes les variables en PHP sont indiquées par un signe dollar ($).

  • La valeur d'une variable est la valeur de son affectation la plus récente.

  • Les variables sont affectées avec l'opérateur =, avec la variable à gauche et l'expression à évaluer à droite.

  • Les variables peuvent, mais n'ont pas besoin, être déclarées avant l'affectation.

  • Les variables en PHP n'ont pas de types intrinsèques - une variable ne sait pas à l'avance si elle sera utilisée pour stocker un nombre ou une chaîne de caractères.

  • Les variables utilisées avant leur affectation ont des valeurs par défaut.

  • PHP fait un bon travail de conversion automatique des types de l'un à l'autre si nécessaire.

  • Les variables PHP sont similaires à Perl.

PHP a un total de huit types de données que nous utilisons pour construire nos variables -

  • Integers - sont des nombres entiers, sans point décimal, comme 4195.

  • Doubles - sont des nombres à virgule flottante, comme 3.14159 ou 49.1.

  • Booleans - n'ont que deux valeurs possibles, soit vrai ou faux.

  • NULL - est un type spécial qui n'a qu'une seule valeur: NULL.

  • Strings - sont des séquences de caractères, comme «PHP prend en charge les opérations sur les chaînes».

  • Arrays - sont des collections nommées et indexées d'autres valeurs.

  • Objects - sont des instances de classes définies par le programmeur, qui peuvent regrouper à la fois d'autres types de valeurs et de fonctions spécifiques à la classe.

  • Resources - sont des variables spéciales qui contiennent des références à des ressources externes à PHP (telles que les connexions à la base de données).

Les cinq premiers sont des types simples et les deux suivants (tableaux et objets) sont composés - les types composés peuvent regrouper d'autres valeurs arbitraires de type arbitraire, contrairement aux types simples.

Nous n'expliquerons que le type de données simple dans ces chapitres. Le tableau et les objets seront expliqués séparément.

Entiers

Ce sont des nombres entiers, sans virgule décimale, comme 4195. Ils sont du type le plus simple. Ils correspondent à des nombres entiers simples, positifs et négatifs. Les entiers peuvent être affectés à des variables, ou ils peuvent être utilisés dans des expressions, comme ceci -

$int_var = 12345;
$another_int = -12345 + 12345;

L'entier peut être au format décimal (base 10), octal (base 8) et hexadécimal (base 16). Le format décimal est le format par défaut, les entiers octaux sont spécifiés avec un 0 en tête et les hexadécimaux ont un 0x en tête.

Pour les plates-formes les plus courantes, le plus grand entier est (2 ** 31. 1) (ou 2 147 483 647) et le plus petit entier (le plus négatif) est. (2 ** 31. 1) (ou .2 147 483 647).

Double

Ils aiment 3.14159 ou 49.1. Par défaut, double impression avec le nombre minimum de décimales nécessaire. Par exemple, le code -

<?php
   $many = 2.2888800;
   $many_2 = 2.2111200;
   $few = $many + $many_2;
   
   print("$many + $many_2 = $few <br>");
?>

Il produit la sortie de navigateur suivante -

2.28888 + 2.21112 = 4.5

Booléen

Ils n'ont que deux valeurs possibles, soit vrai ou faux. PHP fournit quelques constantes spécialement pour une utilisation en tant que booléens: TRUE et FALSE, qui peuvent être utilisées comme ceci -

if (TRUE)
   print("This will always print<br>");

else
   print("This will never print<br>");

Interpréter d'autres types comme des booléens

Voici les règles pour déterminer la "vérité" de toute valeur qui n'est pas encore de type booléen -

  • Si la valeur est un nombre, elle est fausse si exactement égale à zéro et vraie sinon.

  • Si la valeur est une chaîne, elle est fausse si la chaîne est vide (n'a aucun caractère) ou est la chaîne "0", et est vraie dans le cas contraire.

  • Les valeurs de type NULL sont toujours fausses.

  • Si la valeur est un tableau, elle est fausse si elle ne contient aucune autre valeur, et elle est vraie dans le cas contraire. Pour un objet, contenir une valeur signifie avoir une variable membre à laquelle une valeur a été attribuée.

  • Les ressources valides sont vraies (bien que certaines fonctions qui renvoient des ressources lorsqu'elles réussissent renvoient FALSE en cas d'échec).

  • N'utilisez pas le double comme booléen.

Chacune des variables suivantes a la valeur de vérité intégrée dans son nom lorsqu'elle est utilisée dans un contexte booléen.

$true_num = 3 + 0.14159;
$true_str = "Tried and true"
$true_array[49] = "An array element";
$false_array = array();
$false_null = NULL;
$false_num = 999 - 999;
$false_str = "";

NUL

NULL est un type spécial qui n'a qu'une seule valeur: NULL. Pour donner à une variable la valeur NULL, affectez-la simplement comme ceci -

$my_var = NULL;

La constante spéciale NULL est mise en majuscule par convention, mais elle est en fait insensible à la casse; vous pourriez tout aussi bien avoir tapé -

$my_var = null;

Une variable qui a été assignée NULL a les propriétés suivantes -

  • Il prend la valeur FALSE dans un contexte booléen.

  • Il renvoie FALSE lorsqu'il est testé avec la fonction IsSet ().

Cordes

Ce sont des séquences de caractères, comme "PHP prend en charge les opérations sur les chaînes". Voici des exemples valides de chaîne

$string_1 = "This is a string in double quotes";
$string_2 = 'This is a somewhat longer, singly quoted string';
$string_39 = "This string has thirty-nine characters";
$string_0 = ""; // a string with zero characters

Les chaînes entre guillemets simples sont traitées presque littéralement, tandis que les chaînes entre guillemets doubles remplacent les variables par leurs valeurs et interprètent spécialement certaines séquences de caractères.

<?php
   $variable = "name";
   $literally = 'My $variable will not print!';
   
   print($literally);
   print "<br>";
   
   $literally = "My $variable will print!";
   print($literally);
?>

Cela produira le résultat suivant -

My $variable will not print!
My name will print

Il n'y a pas de limites artificielles sur la longueur des chaînes - dans les limites de la mémoire disponible, vous devriez être capable de créer des chaînes arbitrairement longues.

Les chaînes délimitées par des guillemets doubles (comme dans "this") sont prétraitées des deux manières suivantes par PHP -

  • Certaines séquences de caractères commençant par une barre oblique inverse (\) sont remplacées par des caractères spéciaux

  • Les noms de variables (commençant par $) sont remplacés par des représentations sous forme de chaîne de leurs valeurs.

Les remplacements de séquence d'échappement sont -

  • \ n est remplacé par le caractère de nouvelle ligne
  • \ r est remplacé par le caractère de retour chariot
  • \ t est remplacé par le caractère de tabulation
  • \ $ est remplacé par le signe dollar lui-même ($)
  • \ "est remplacé par un guillemet simple (")
  • \\ est remplacé par une seule barre oblique inverse (\)

Document ici

Vous pouvez affecter plusieurs lignes à une seule variable de chaîne en utilisant ici le document -

<?php
   $channel =<<<_XML_
   
   <channel>
      <title>What's For Dinner</title>
      <link>http://menu.example.com/ </link>
      <description>Choose what to eat tonight.</description>
   </channel>
   _XML_;
   
   echo <<<END
   This uses the "here document" syntax to output multiple lines with variable 
   interpolation. Note that the here document terminator must appear on a line with 
   just a semicolon. no extra whitespace!
   
END; print $channel; ?>

Cela produira le résultat suivant -

This uses the "here document" syntax to output
multiple lines with variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!

<channel>
<title>What's For Dinner<title>
<link>http://menu.example.com/<link>
<description>Choose what to eat tonight.</description>

Portée variable

La portée peut être définie comme la plage de disponibilité d'une variable pour le programme dans lequel elle est déclarée. Les variables PHP peuvent être l'un des quatre types de portée -

Nommage des variables

Les règles pour nommer une variable sont -

  • Les noms de variable doivent commencer par une lettre ou un caractère de soulignement.

  • Un nom de variable peut être composé de chiffres, de lettres, de traits de soulignement mais vous ne pouvez pas utiliser de caractères tels que +, -,%, (,). & , etc

Il n'y a pas de limite de taille pour les variables.