H2 - P2019

Développement web

Cours 16 - 2016-01-25

PHP

Les variables

PHP est un language permissif

Vous n'avez pas besoin de spécifier le type de variable

Mais vous pouvez le faire

Vous pouvez aussi changer de type de variable à la volée

Exemple


<?php
    $foo = 'bar';
    echo $foo;

    $foo = 1;
    echo $foo;
                    

Déclaration

Contrairement au JS, il n'est pas nécessaire d'indiquer que l'on créé une variable

Les variables classiques sont précédées du signe $

Déclaration

Elles ne peuvent pas commencer par un chiffre

Elles ne peuvent pas contenir d'espace ni de caractères spéciaux (@,é,^,-,...)

Déclaration

Comme en JS, il vous faut choisir une nomenclature

  • camelCase : variables classiques
  • underscore_case : variables classiques
  • PascalCase : Classes
  • UPPER_CASE : Constantes

Types

Il éxiste différents types de variables en PHP

  • String (string)
  • Int (int)
  • Float (float)
  • Array (array)
  • Boolean (bool)
  • Object (object)
  • Function
  • etc.

Types


<?php
    $foo = 'bar';             // String (fonctionne avec "")
    $foo = 12;                // Int
    $foo = 1.2;               // Float
    $foo = ['blabla','toto']; // Array
    $foo = false;             // Boolean
    $foo = new stdClass();    // Object (?)
                    

Types

Il est possible de connaître le type d'une variable avec la fonction gettype()


<?php
    $foo = 'bar';
    echo gettype($foo); // Affichera "string"
                    

Types

Il est possible de changer le type d'une variable


<?php
    $foo = '12';      // String
    $foo = (int)$foo; // Int
                    

Tableaux

Déclaration


<?php
    $foo = array();

    // Équivaut à 
    $foo = [];
                    

Tableaux

Un tableau peut stocker n'importe quel type de variable (y compris un autre tableau)


<?php
    $foo = ['bar',12,['deuxième','tableau']];
                    

Tableaux

Affichage


<?php
    $foo = ['bar',12,['deuxième','tableau']];
    
    echo $foo[0];
    echo $foo[1];
    echo $foo[2][0];
    echo $foo[2][1];
                    

Tableaux

Affichage


<?php
    $foo = ['bar',12,['deuxième','tableau']];
    
    echo '<pre>';
    print_r($foo);
    echo '</pre>';
                    

Variables globales

Il est possible de créer des variables qui seront visible de n'importe où à partir du moment où elles sont déclarées

Pour cela on utilise la fonction define()


<?php
    define('FOO','bar');
    echo FOO;
                    

Variables globales

Ces variables ne peuvent être modifiées

Elles sont en général utilisées pour des données de configuration

On les déclare souvent en UPPER_CASE