Docstoc

Formation PHP

Document Sample
Formation PHP Powered By Docstoc
					                          e
 Programmation du Web : Pr´sentation et description du
                   langage PHP

                          Jean-Baptiste Vioix
           (jean-baptiste.vioix@iut-dijon.u-bourgogne.fr)

                          IUT de Dijon-Auxerre - LE2I




http://jb.vioix.free.fr                                     1-36
                                 e
                               Pr´sentation   Historique de PHP


Historique de PHP



                           e
      Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble
                            e
      de scripts Perl destin´s au Web.
             e                       a      e e
      Le but ´tait de faciliter des tˆches r´p´titives.
          e                            e e
      Diff´rentes versions se sont succ´d´es, chacune apportant des
         e                  e                           e
      am´liorations (rapidit´, gestion des bases de donn´es,...).
                                                     e
      En 2000, la version 4 apporte de nombreuses ´volutions et plusieurs
                                                                 e
      millions de sites utilisent PHP qui devient un concurrent s´rieux aux
      solutions comme les ASP, JSP, ...
              e
      La derni`re version majeure est la 5 sortie en 2004.




http://jb.vioix.free.fr                                                  2-36
                                 e
                               Pr´sentation   Historique de PHP


Historique de PHP



                           e
      Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble
                            e
      de scripts Perl destin´s au Web.
             e                       a      e e
      Le but ´tait de faciliter des tˆches r´p´titives.
          e                            e e
      Diff´rentes versions se sont succ´d´es, chacune apportant des
         e                  e                           e
      am´liorations (rapidit´, gestion des bases de donn´es,...).
                                                     e
      En 2000, la version 4 apporte de nombreuses ´volutions et plusieurs
                                                                 e
      millions de sites utilisent PHP qui devient un concurrent s´rieux aux
      solutions comme les ASP, JSP, ...
              e
      La derni`re version majeure est la 5 sortie en 2004.




http://jb.vioix.free.fr                                                  2-36
                                 e
                               Pr´sentation   Historique de PHP


Historique de PHP



                           e
      Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble
                            e
      de scripts Perl destin´s au Web.
             e                       a      e e
      Le but ´tait de faciliter des tˆches r´p´titives.
          e                            e e
      Diff´rentes versions se sont succ´d´es, chacune apportant des
         e                  e                           e
      am´liorations (rapidit´, gestion des bases de donn´es,...).
                                                     e
      En 2000, la version 4 apporte de nombreuses ´volutions et plusieurs
                                                                 e
      millions de sites utilisent PHP qui devient un concurrent s´rieux aux
      solutions comme les ASP, JSP, ...
              e
      La derni`re version majeure est la 5 sortie en 2004.




http://jb.vioix.free.fr                                                  2-36
                                 e
                               Pr´sentation   Historique de PHP


Historique de PHP



                           e
      Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble
                            e
      de scripts Perl destin´s au Web.
             e                       a      e e
      Le but ´tait de faciliter des tˆches r´p´titives.
          e                            e e
      Diff´rentes versions se sont succ´d´es, chacune apportant des
         e                  e                           e
      am´liorations (rapidit´, gestion des bases de donn´es,...).
                                                     e
      En 2000, la version 4 apporte de nombreuses ´volutions et plusieurs
                                                                 e
      millions de sites utilisent PHP qui devient un concurrent s´rieux aux
      solutions comme les ASP, JSP, ...
              e
      La derni`re version majeure est la 5 sortie en 2004.




http://jb.vioix.free.fr                                                  2-36
                                 e
                               Pr´sentation   Historique de PHP


Historique de PHP



                           e
      Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble
                            e
      de scripts Perl destin´s au Web.
             e                       a      e e
      Le but ´tait de faciliter des tˆches r´p´titives.
          e                            e e
      Diff´rentes versions se sont succ´d´es, chacune apportant des
         e                  e                           e
      am´liorations (rapidit´, gestion des bases de donn´es,...).
                                                     e
      En 2000, la version 4 apporte de nombreuses ´volutions et plusieurs
                                                                 e
      millions de sites utilisent PHP qui devient un concurrent s´rieux aux
      solutions comme les ASP, JSP, ...
              e
      La derni`re version majeure est la 5 sortie en 2004.




http://jb.vioix.free.fr                                                  2-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                e
                              Pr´sentation         e
                                             Caract´ristiques de PHP


      e
Caract´ristiques de PHP


                     a
      Langage facile ` apprendre (beaucoup de points communs avec les
      langages usuels comme C, Java, ...).
                e                             e
      Possibilit´ de programmer en objet sans ˆtre obligatoire.
             c       e                                             e
      Interfa¸age ais´ avec la plupart des moteurs de bases de donn´es
      existants.
            e           e
      API tr`s riche (cr´ation d’image, de document PDF, ...).
        e
      Tr`s nombreuses applications PHP libres disponibles (forums,
      webmail, sondages, ...).
               e     e             e
      Communaut´ de d´veloppeurs tr`s dynamique.




http://jb.vioix.free.fr                                                  3-36
                                 e
                               Pr´sentation   Utilisation de PHP


Utilisation de PHP (livre blanc de PHP - 2005)



                    e
      PHP est utilis´ par 87 % des entreprises du CAC40.
      En France, parmi les 10 entreprises ayant le plus de visites, 9 utilisent
                 e
      PHP (la 10`me est Microsoft).
                                   e
      Dans le monde, PHP est utilis´ par 22 millions de domaines et 1,2
      millions d’adresses IP.
        e       e                                           e
      D´velopp´ par la fondation Apache par environ 1000 ing´nieurs et
            e                      e
      utilis´ par environ 500 000 d´veloppeurs.
      PHP est un des piliers des plate-formes LAMP (Linux,
      Apache,MySQL et PHP ou Perl ou Python).




http://jb.vioix.free.fr                                                     4-36
                                 e
                               Pr´sentation   Utilisation de PHP


Utilisation de PHP (livre blanc de PHP - 2005)



                    e
      PHP est utilis´ par 87 % des entreprises du CAC40.
      En France, parmi les 10 entreprises ayant le plus de visites, 9 utilisent
                 e
      PHP (la 10`me est Microsoft).
                                   e
      Dans le monde, PHP est utilis´ par 22 millions de domaines et 1,2
      millions d’adresses IP.
        e       e                                           e
      D´velopp´ par la fondation Apache par environ 1000 ing´nieurs et
            e                      e
      utilis´ par environ 500 000 d´veloppeurs.
      PHP est un des piliers des plate-formes LAMP (Linux,
      Apache,MySQL et PHP ou Perl ou Python).




http://jb.vioix.free.fr                                                     4-36
                                 e
                               Pr´sentation   Utilisation de PHP


Utilisation de PHP (livre blanc de PHP - 2005)



                    e
      PHP est utilis´ par 87 % des entreprises du CAC40.
      En France, parmi les 10 entreprises ayant le plus de visites, 9 utilisent
                 e
      PHP (la 10`me est Microsoft).
                                   e
      Dans le monde, PHP est utilis´ par 22 millions de domaines et 1,2
      millions d’adresses IP.
        e       e                                           e
      D´velopp´ par la fondation Apache par environ 1000 ing´nieurs et
            e                      e
      utilis´ par environ 500 000 d´veloppeurs.
      PHP est un des piliers des plate-formes LAMP (Linux,
      Apache,MySQL et PHP ou Perl ou Python).




http://jb.vioix.free.fr                                                     4-36
                                 e
                               Pr´sentation   Utilisation de PHP


Utilisation de PHP (livre blanc de PHP - 2005)



                    e
      PHP est utilis´ par 87 % des entreprises du CAC40.
      En France, parmi les 10 entreprises ayant le plus de visites, 9 utilisent
                 e
      PHP (la 10`me est Microsoft).
                                   e
      Dans le monde, PHP est utilis´ par 22 millions de domaines et 1,2
      millions d’adresses IP.
        e       e                                           e
      D´velopp´ par la fondation Apache par environ 1000 ing´nieurs et
            e                      e
      utilis´ par environ 500 000 d´veloppeurs.
      PHP est un des piliers des plate-formes LAMP (Linux,
      Apache,MySQL et PHP ou Perl ou Python).




http://jb.vioix.free.fr                                                     4-36
                                 e
                               Pr´sentation   Utilisation de PHP


Utilisation de PHP (livre blanc de PHP - 2005)



                    e
      PHP est utilis´ par 87 % des entreprises du CAC40.
      En France, parmi les 10 entreprises ayant le plus de visites, 9 utilisent
                 e
      PHP (la 10`me est Microsoft).
                                   e
      Dans le monde, PHP est utilis´ par 22 millions de domaines et 1,2
      millions d’adresses IP.
        e       e                                           e
      D´velopp´ par la fondation Apache par environ 1000 ing´nieurs et
            e                      e
      utilis´ par environ 500 000 d´veloppeurs.
      PHP est un des piliers des plate-formes LAMP (Linux,
      Apache,MySQL et PHP ou Perl ou Python).




http://jb.vioix.free.fr                                                     4-36
                                e
                              Pr´sentation   Principe de fonctionnement


Principe de fonctionnement


      Un fichier PHP est un fichier HTML ou XHTML dans lequel on
           e                          e
      ajout´ des instructions PHP plac´es entre les balises < ?php et ?>
                      e
      Il est sauvegard´ avec l’extension .php
      Lorsque l’utilisateur (un navigateur) demande un fichier PHP au
                                        e
      serveur, celui ci commence par v´rifier si il existe.
                                                  a          e
      Si le fichier existe, le serveur le transmet ` l’interpr´teur PHP qui
        e                      e
      ex´cute le code (avec ´ventuellement des interactions avec une base
              e                                        e
      de donn´es) et remplace le code PHP par le r´sultat (donc des balises
      HTML).
                                          e         e       e
      Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des
                                 e              e
      instructions PHP, remplac´es par leurs r´sultats.



http://jb.vioix.free.fr                                                    5-36
                                e
                              Pr´sentation   Principe de fonctionnement


Principe de fonctionnement


      Un fichier PHP est un fichier HTML ou XHTML dans lequel on
           e                          e
      ajout´ des instructions PHP plac´es entre les balises < ?php et ?>
                      e
      Il est sauvegard´ avec l’extension .php
      Lorsque l’utilisateur (un navigateur) demande un fichier PHP au
                                        e
      serveur, celui ci commence par v´rifier si il existe.
                                                  a          e
      Si le fichier existe, le serveur le transmet ` l’interpr´teur PHP qui
        e                      e
      ex´cute le code (avec ´ventuellement des interactions avec une base
              e                                        e
      de donn´es) et remplace le code PHP par le r´sultat (donc des balises
      HTML).
                                          e         e       e
      Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des
                                 e              e
      instructions PHP, remplac´es par leurs r´sultats.



http://jb.vioix.free.fr                                                    5-36
                                e
                              Pr´sentation   Principe de fonctionnement


Principe de fonctionnement


      Un fichier PHP est un fichier HTML ou XHTML dans lequel on
           e                          e
      ajout´ des instructions PHP plac´es entre les balises < ?php et ?>
                      e
      Il est sauvegard´ avec l’extension .php
      Lorsque l’utilisateur (un navigateur) demande un fichier PHP au
                                        e
      serveur, celui ci commence par v´rifier si il existe.
                                                  a          e
      Si le fichier existe, le serveur le transmet ` l’interpr´teur PHP qui
        e                      e
      ex´cute le code (avec ´ventuellement des interactions avec une base
              e                                        e
      de donn´es) et remplace le code PHP par le r´sultat (donc des balises
      HTML).
                                          e         e       e
      Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des
                                 e              e
      instructions PHP, remplac´es par leurs r´sultats.



http://jb.vioix.free.fr                                                    5-36
                                e
                              Pr´sentation   Principe de fonctionnement


Principe de fonctionnement


      Un fichier PHP est un fichier HTML ou XHTML dans lequel on
           e                          e
      ajout´ des instructions PHP plac´es entre les balises < ?php et ?>
                      e
      Il est sauvegard´ avec l’extension .php
      Lorsque l’utilisateur (un navigateur) demande un fichier PHP au
                                        e
      serveur, celui ci commence par v´rifier si il existe.
                                                  a          e
      Si le fichier existe, le serveur le transmet ` l’interpr´teur PHP qui
        e                      e
      ex´cute le code (avec ´ventuellement des interactions avec une base
              e                                        e
      de donn´es) et remplace le code PHP par le r´sultat (donc des balises
      HTML).
                                          e         e       e
      Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des
                                 e              e
      instructions PHP, remplac´es par leurs r´sultats.



http://jb.vioix.free.fr                                                    5-36
                                e
                              Pr´sentation   Principe de fonctionnement


Principe de fonctionnement


      Un fichier PHP est un fichier HTML ou XHTML dans lequel on
           e                          e
      ajout´ des instructions PHP plac´es entre les balises < ?php et ?>
                      e
      Il est sauvegard´ avec l’extension .php
      Lorsque l’utilisateur (un navigateur) demande un fichier PHP au
                                        e
      serveur, celui ci commence par v´rifier si il existe.
                                                  a          e
      Si le fichier existe, le serveur le transmet ` l’interpr´teur PHP qui
        e                      e
      ex´cute le code (avec ´ventuellement des interactions avec une base
              e                                        e
      de donn´es) et remplace le code PHP par le r´sultat (donc des balises
      HTML).
                                          e         e       e
      Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des
                                 e              e
      instructions PHP, remplac´es par leurs r´sultats.



http://jb.vioix.free.fr                                                    5-36
                            e
                          Pr´sentation   Principe de fonctionnement


Principe de fonctionnement




                                                                      Source wikipedia




http://jb.vioix.free.fr                                                         6-36
                                               e
                                             Pr´sentation    Premier programme


Premier programme

       Voici un premier programme en PHP :
<! DOCTYPE ...
< html xmlns = " http :// www . w3 . org /1999/ xhtml " xml : lang = " en " lang =" en " >
<head >
<title > Bonjour </ title >
< meta http - equiv =" Content - Type " content = " text / html ; ch arset = UTF -8 "/>
</ head >
<body >
<? php
   echo " <h1 > Bonjour ! </ h1 > " ;
?>
</ body >
</ html >



                                 e
       Le code suivant est renvoy´ au navigateur :




http://jb.vioix.free.fr                                                                      7-36
                                               e
                                             Pr´sentation    Premier programme


Premier programme

       Voici un premier programme en PHP :
<! DOCTYPE ...
< html xmlns = " http :// www . w3 . org /1999/ xhtml " xml : lang = " en " lang =" en " >
<head >
<title > Bonjour </ title >
< meta http - equiv =" Content - Type " content = " text / html ; ch arset = UTF -8 "/>
</ head >
<body >
<? php
   echo " <h1 > Bonjour ! </ h1 > " ;
?>
</ body >
</ html >



                                 e
       Le code suivant est renvoy´ au navigateur :
<! DOCTYPE ...
< html xmlns = " http :// www . w3 . org /1999/ xhtml " xml : lang = " en " lang =" en " >
< head >
< title > Bonjour </ title >
< meta http - equiv =" Content - Type " content = " text / html ; charset = UTF -8 "/ >
</ head >
< body >
< h1 > Bonjour ! </ h1 ></ body >
</ html >


http://jb.vioix.free.fr                                                                      7-36
                          Syntaxe du langage    e e     e
                                               G´n´ralit´s


 e e     e
G´n´ralit´s



      Le code est compris entre les balises < ?php et ?>
                             e e
      Les instructions sont s´par´es par un point-virgule ; comme en C,
      Java, ...
                                  e
      Les commentaires sont plac´s entre les signes /* et */ ou sur une
                    e e e
      seule ligne pr´c´d´e de // ou de #
                       a
      PHP est sensible ` la casse (majuscules et minuscules).
                              e     e
      Les blocs de code sont d´limit´s par des accolades { et }




http://jb.vioix.free.fr                                                   8-36
                          Syntaxe du langage    e e     e
                                               G´n´ralit´s


 e e     e
G´n´ralit´s



      Le code est compris entre les balises < ?php et ?>
                             e e
      Les instructions sont s´par´es par un point-virgule ; comme en C,
      Java, ...
                                  e
      Les commentaires sont plac´s entre les signes /* et */ ou sur une
                    e e e
      seule ligne pr´c´d´e de // ou de #
                       a
      PHP est sensible ` la casse (majuscules et minuscules).
                              e     e
      Les blocs de code sont d´limit´s par des accolades { et }




http://jb.vioix.free.fr                                                   8-36
                          Syntaxe du langage    e e     e
                                               G´n´ralit´s


 e e     e
G´n´ralit´s



      Le code est compris entre les balises < ?php et ?>
                             e e
      Les instructions sont s´par´es par un point-virgule ; comme en C,
      Java, ...
                                  e
      Les commentaires sont plac´s entre les signes /* et */ ou sur une
                    e e e
      seule ligne pr´c´d´e de // ou de #
                       a
      PHP est sensible ` la casse (majuscules et minuscules).
                              e     e
      Les blocs de code sont d´limit´s par des accolades { et }




http://jb.vioix.free.fr                                                   8-36
                          Syntaxe du langage    e e     e
                                               G´n´ralit´s


 e e     e
G´n´ralit´s



      Le code est compris entre les balises < ?php et ?>
                             e e
      Les instructions sont s´par´es par un point-virgule ; comme en C,
      Java, ...
                                  e
      Les commentaires sont plac´s entre les signes /* et */ ou sur une
                    e e e
      seule ligne pr´c´d´e de // ou de #
                       a
      PHP est sensible ` la casse (majuscules et minuscules).
                              e     e
      Les blocs de code sont d´limit´s par des accolades { et }




http://jb.vioix.free.fr                                                   8-36
                          Syntaxe du langage    e e     e
                                               G´n´ralit´s


 e e     e
G´n´ralit´s



      Le code est compris entre les balises < ?php et ?>
                             e e
      Les instructions sont s´par´es par un point-virgule ; comme en C,
      Java, ...
                                  e
      Les commentaires sont plac´s entre les signes /* et */ ou sur une
                    e e e
      seule ligne pr´c´d´e de // ou de #
                       a
      PHP est sensible ` la casse (majuscules et minuscules).
                              e     e
      Les blocs de code sont d´limit´s par des accolades { et }




http://jb.vioix.free.fr                                                   8-36
                          Syntaxe du langage   Les variables


                  e
Les variables : pr´sentation



                                   e e e
      Les noms de variables sont pr´c´d´s du signe $
                                               e            e
      Les noms doivent commencer par un caract`re non num´rique ensuite,
              e
      ce peut ˆtre une combinaison quelconque de chiffres et de lettres.
                     ıt
      PHP reconnaˆ plusieurs formes de variables : les variables scalaires et
                        e
      les variables agr´gats (tableaux et tables de hachages).
          e
      L’op´rateur d’affectation est le signe =
                                                          e e
      Le typage est implicite, les variables ne sont pas d´clar´es avant
      l’utilisation.




http://jb.vioix.free.fr                                                    9-36
                          Syntaxe du langage   Les variables


                  e
Les variables : pr´sentation



                                   e e e
      Les noms de variables sont pr´c´d´s du signe $
                                               e            e
      Les noms doivent commencer par un caract`re non num´rique ensuite,
              e
      ce peut ˆtre une combinaison quelconque de chiffres et de lettres.
                     ıt
      PHP reconnaˆ plusieurs formes de variables : les variables scalaires et
                        e
      les variables agr´gats (tableaux et tables de hachages).
          e
      L’op´rateur d’affectation est le signe =
                                                          e e
      Le typage est implicite, les variables ne sont pas d´clar´es avant
      l’utilisation.




http://jb.vioix.free.fr                                                    9-36
                          Syntaxe du langage   Les variables


                  e
Les variables : pr´sentation



                                   e e e
      Les noms de variables sont pr´c´d´s du signe $
                                               e            e
      Les noms doivent commencer par un caract`re non num´rique ensuite,
              e
      ce peut ˆtre une combinaison quelconque de chiffres et de lettres.
                     ıt
      PHP reconnaˆ plusieurs formes de variables : les variables scalaires et
                        e
      les variables agr´gats (tableaux et tables de hachages).
          e
      L’op´rateur d’affectation est le signe =
                                                          e e
      Le typage est implicite, les variables ne sont pas d´clar´es avant
      l’utilisation.




http://jb.vioix.free.fr                                                    9-36
                          Syntaxe du langage   Les variables


                  e
Les variables : pr´sentation



                                   e e e
      Les noms de variables sont pr´c´d´s du signe $
                                               e            e
      Les noms doivent commencer par un caract`re non num´rique ensuite,
              e
      ce peut ˆtre une combinaison quelconque de chiffres et de lettres.
                     ıt
      PHP reconnaˆ plusieurs formes de variables : les variables scalaires et
                        e
      les variables agr´gats (tableaux et tables de hachages).
          e
      L’op´rateur d’affectation est le signe =
                                                          e e
      Le typage est implicite, les variables ne sont pas d´clar´es avant
      l’utilisation.




http://jb.vioix.free.fr                                                    9-36
                          Syntaxe du langage   Les variables


                  e
Les variables : pr´sentation



                                   e e e
      Les noms de variables sont pr´c´d´s du signe $
                                               e            e
      Les noms doivent commencer par un caract`re non num´rique ensuite,
              e
      ce peut ˆtre une combinaison quelconque de chiffres et de lettres.
                     ıt
      PHP reconnaˆ plusieurs formes de variables : les variables scalaires et
                        e
      les variables agr´gats (tableaux et tables de hachages).
          e
      L’op´rateur d’affectation est le signe =
                                                          e e
      Le typage est implicite, les variables ne sont pas d´clar´es avant
      l’utilisation.




http://jb.vioix.free.fr                                                    9-36
                          Syntaxe du langage   Les variables


                                 e
Les variables : les variables num´riques

                    e
      Deux types num´riques sont possibles : les entiers et les flottants.
                                       e                   e
      Pour les flottants, le symbole . s´pare la partie enti`re de la partie
       e
      r´elle.
                                                   e
      La notation scientifique est reconnue par l’op´rateur e
                  e                                  e
      Le type bool´en existe, les deux variables bool´ennes sont FALSE et
                               a
      TRUE et sont insensibles ` la casse.
            e
      Les op´rations usuelles sont reconnues : +, -, /, *, % ainsi que les
          e
      incr´mentations ++ et --




http://jb.vioix.free.fr                                                      10-36
                          Syntaxe du langage   Les variables


                                 e
Les variables : les variables num´riques

                    e
      Deux types num´riques sont possibles : les entiers et les flottants.
                                       e                   e
      Pour les flottants, le symbole . s´pare la partie enti`re de la partie
       e
      r´elle.
                                                   e
      La notation scientifique est reconnue par l’op´rateur e
                  e                                  e
      Le type bool´en existe, les deux variables bool´ennes sont FALSE et
                               a
      TRUE et sont insensibles ` la casse.
            e
      Les op´rations usuelles sont reconnues : +, -, /, *, % ainsi que les
          e
      incr´mentations ++ et --




http://jb.vioix.free.fr                                                      10-36
                          Syntaxe du langage   Les variables


                                 e
Les variables : les variables num´riques

                    e
      Deux types num´riques sont possibles : les entiers et les flottants.
                                       e                   e
      Pour les flottants, le symbole . s´pare la partie enti`re de la partie
       e
      r´elle.
                                                   e
      La notation scientifique est reconnue par l’op´rateur e
                  e                                  e
      Le type bool´en existe, les deux variables bool´ennes sont FALSE et
                               a
      TRUE et sont insensibles ` la casse.
            e
      Les op´rations usuelles sont reconnues : +, -, /, *, % ainsi que les
          e
      incr´mentations ++ et --




http://jb.vioix.free.fr                                                      10-36
                          Syntaxe du langage   Les variables


                                 e
Les variables : les variables num´riques

                    e
      Deux types num´riques sont possibles : les entiers et les flottants.
                                       e                   e
      Pour les flottants, le symbole . s´pare la partie enti`re de la partie
       e
      r´elle.
                                                   e
      La notation scientifique est reconnue par l’op´rateur e
                  e                                  e
      Le type bool´en existe, les deux variables bool´ennes sont FALSE et
                               a
      TRUE et sont insensibles ` la casse.
            e
      Les op´rations usuelles sont reconnues : +, -, /, *, % ainsi que les
          e
      incr´mentations ++ et --




http://jb.vioix.free.fr                                                      10-36
                                Syntaxe du langage   Les variables


                                 e
Les variables : les variables num´riques

                     e
       Deux types num´riques sont possibles : les entiers et les flottants.
                                        e                   e
       Pour les flottants, le symbole . s´pare la partie enti`re de la partie
        e
       r´elle.
                                                    e
       La notation scientifique est reconnue par l’op´rateur e
                   e                                  e
       Le type bool´en existe, les deux variables bool´ennes sont FALSE et
                                a
       TRUE et sont insensibles ` la casse.
             e
       Les op´rations usuelles sont reconnues : +, -, /, *, % ainsi que les
           e
       incr´mentations ++ et --
...
$a =12;
$g =9.81;
$micro =1 e -6;
$a ++;
$b =15;
$c = $a + $b ;       // c contient 28
...



http://jb.vioix.free.fr                                                       10-36
                           Syntaxe du langage   Les variables


                       ınes de caract`res (1)
Les variables : les chaˆ             e

             ınes de caract`res sont encadr´es par des guillemets simples
      Les chaˆ             e               e
      (’) ou doubles (").
                      e        a      e
      Les variables pr´sentent ` l’int´rieur des guillemets doubles sont
             ee
      interpr´t´es.
                            ıt´                e
      Dans le cas d’ambigu¨ e lors de l’interpr´tation des variables, il est
      possible de les encadrer d’accolades { et }
                             e     e
      Les principaux caract`res d’´chappement sont reconnus (\t, \n, \r)
                                            e        e e
      de plus, les signes $, \ et " doivent ˆtre prot´g´s : \$, \\ et \"
          e                         e
      L’op´rateur . permet de concat´ner des valeurs.




http://jb.vioix.free.fr                                                    11-36
                           Syntaxe du langage   Les variables


                       ınes de caract`res (1)
Les variables : les chaˆ             e

             ınes de caract`res sont encadr´es par des guillemets simples
      Les chaˆ             e               e
      (’) ou doubles (").
                      e        a      e
      Les variables pr´sentent ` l’int´rieur des guillemets doubles sont
             ee
      interpr´t´es.
                            ıt´                e
      Dans le cas d’ambigu¨ e lors de l’interpr´tation des variables, il est
      possible de les encadrer d’accolades { et }
                             e     e
      Les principaux caract`res d’´chappement sont reconnus (\t, \n, \r)
                                            e        e e
      de plus, les signes $, \ et " doivent ˆtre prot´g´s : \$, \\ et \"
          e                         e
      L’op´rateur . permet de concat´ner des valeurs.




http://jb.vioix.free.fr                                                    11-36
                           Syntaxe du langage   Les variables


                       ınes de caract`res (1)
Les variables : les chaˆ             e

             ınes de caract`res sont encadr´es par des guillemets simples
      Les chaˆ             e               e
      (’) ou doubles (").
                      e        a      e
      Les variables pr´sentent ` l’int´rieur des guillemets doubles sont
             ee
      interpr´t´es.
                            ıt´                e
      Dans le cas d’ambigu¨ e lors de l’interpr´tation des variables, il est
      possible de les encadrer d’accolades { et }
                             e     e
      Les principaux caract`res d’´chappement sont reconnus (\t, \n, \r)
                                            e        e e
      de plus, les signes $, \ et " doivent ˆtre prot´g´s : \$, \\ et \"
          e                         e
      L’op´rateur . permet de concat´ner des valeurs.




http://jb.vioix.free.fr                                                    11-36
                           Syntaxe du langage   Les variables


                       ınes de caract`res (1)
Les variables : les chaˆ             e

             ınes de caract`res sont encadr´es par des guillemets simples
      Les chaˆ             e               e
      (’) ou doubles (").
                      e        a      e
      Les variables pr´sentent ` l’int´rieur des guillemets doubles sont
             ee
      interpr´t´es.
                            ıt´                e
      Dans le cas d’ambigu¨ e lors de l’interpr´tation des variables, il est
      possible de les encadrer d’accolades { et }
                             e     e
      Les principaux caract`res d’´chappement sont reconnus (\t, \n, \r)
                                            e        e e
      de plus, les signes $, \ et " doivent ˆtre prot´g´s : \$, \\ et \"
          e                         e
      L’op´rateur . permet de concat´ner des valeurs.




http://jb.vioix.free.fr                                                    11-36
                                Syntaxe du langage   Les variables


                       ınes de caract`res (1)
Les variables : les chaˆ             e

             ınes de caract`res sont encadr´es par des guillemets simples
      Les chaˆ             e               e
      (’) ou doubles (").
                      e        a      e
      Les variables pr´sentent ` l’int´rieur des guillemets doubles sont
             ee
      interpr´t´es.
                            ıt´                e
      Dans le cas d’ambigu¨ e lors de l’interpr´tation des variables, il est
      possible de les encadrer d’accolades { et }
                             e     e
      Les principaux caract`res d’´chappement sont reconnus (\t, \n, \r)
                                            e        e e
      de plus, les signes $, \ et " doivent ˆtre prot´g´s : \$, \\ et \"
          e                         e
      L’op´rateur . permet de concat´ner des valeurs.
...
$nom = " tux " ;
$serveur = " @mail . com " ;
$adresse_mail = $nom . $serveur ;
echo " Adresse mail : $adresse_mail " ;
...



http://jb.vioix.free.fr                                                    11-36
                                     Syntaxe du langage   Les variables


                       ınes de caract`res (2)
Les variables : les chaˆ             e


                     e                     ıne       e      e e
        Chaque caract`re composant la chaˆ peut ˆtre acc´d´ en utilisant le
                     ıne                   a
        nom de la chaˆ suivit de l’indice (` partir de 0) entre accolades :
        $b=$chaine{3}

                             ıne         e
        La longueur d’une chaˆ est renvoy´e par la fonction strlen :
        $l = strlen($s)

               ınes de caract`res peuvent ˆtre affich´es avec les fonctions
        Les chaˆ             e             e        e
        echo et print (il existe une petite diff´rence entre les deux)1 .
                                               e
        La fonction print r permet d’afficher le contenu d’une variable, d’un
                                                        ıne        e
        tableau, d’un objet ou de le copier vers une chaˆ de caract`res.



   1
       http://www.estvideo.com/dew/index/page/phpbench
http://jb.vioix.free.fr                                                     12-36
                                     Syntaxe du langage   Les variables


                       ınes de caract`res (2)
Les variables : les chaˆ             e


                     e                     ıne       e      e e
        Chaque caract`re composant la chaˆ peut ˆtre acc´d´ en utilisant le
                     ıne                   a
        nom de la chaˆ suivit de l’indice (` partir de 0) entre accolades :
        $b=$chaine{3}

                             ıne         e
        La longueur d’une chaˆ est renvoy´e par la fonction strlen :
        $l = strlen($s)

               ınes de caract`res peuvent ˆtre affich´es avec les fonctions
        Les chaˆ             e             e        e
        echo et print (il existe une petite diff´rence entre les deux)1 .
                                               e
        La fonction print r permet d’afficher le contenu d’une variable, d’un
                                                        ıne        e
        tableau, d’un objet ou de le copier vers une chaˆ de caract`res.



   1
       http://www.estvideo.com/dew/index/page/phpbench
http://jb.vioix.free.fr                                                     12-36
                                     Syntaxe du langage   Les variables


                       ınes de caract`res (2)
Les variables : les chaˆ             e


                     e                     ıne       e      e e
        Chaque caract`re composant la chaˆ peut ˆtre acc´d´ en utilisant le
                     ıne                   a
        nom de la chaˆ suivit de l’indice (` partir de 0) entre accolades :
        $b=$chaine{3}

                             ıne         e
        La longueur d’une chaˆ est renvoy´e par la fonction strlen :
        $l = strlen($s)

               ınes de caract`res peuvent ˆtre affich´es avec les fonctions
        Les chaˆ             e             e        e
        echo et print (il existe une petite diff´rence entre les deux)1 .
                                               e
        La fonction print r permet d’afficher le contenu d’une variable, d’un
                                                        ıne        e
        tableau, d’un objet ou de le copier vers une chaˆ de caract`res.



   1
       http://www.estvideo.com/dew/index/page/phpbench
http://jb.vioix.free.fr                                                     12-36
                                     Syntaxe du langage   Les variables


                       ınes de caract`res (2)
Les variables : les chaˆ             e


                     e                     ıne       e      e e
        Chaque caract`re composant la chaˆ peut ˆtre acc´d´ en utilisant le
                     ıne                   a
        nom de la chaˆ suivit de l’indice (` partir de 0) entre accolades :
        $b=$chaine{3}

                             ıne         e
        La longueur d’une chaˆ est renvoy´e par la fonction strlen :
        $l = strlen($s)

               ınes de caract`res peuvent ˆtre affich´es avec les fonctions
        Les chaˆ             e             e        e
        echo et print (il existe une petite diff´rence entre les deux)1 .
                                               e
        La fonction print r permet d’afficher le contenu d’une variable, d’un
                                                        ıne        e
        tableau, d’un objet ou de le copier vers une chaˆ de caract`res.



   1
       http://www.estvideo.com/dew/index/page/phpbench
http://jb.vioix.free.fr                                                     12-36
                          Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.




http://jb.vioix.free.fr                                                   13-36
                          Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.




http://jb.vioix.free.fr                                                   13-36
                          Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.




http://jb.vioix.free.fr                                                   13-36
                          Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.




http://jb.vioix.free.fr                                                   13-36
                          Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.




http://jb.vioix.free.fr                                                   13-36
                                 Syntaxe du langage   Les variables


                                   e
Les variables : les tableaux indici´s

               e           e            e
      Les donn´es peuvent ˆtre regroup´es en tableaux, les indices sont
          e                                                 e
      plac´s dans des crochets [ et ]. Les tableaux peuvent ˆtre
      multidimensionnels.
                 ee
      Le premier ´l´ment porte l’indice 0 (comme en C, Java, ...)
               e         e                         e     ee e
      Les donn´es stock´es dans un tableau peuvent ˆtre h´t´rog`nes
      (types chaˆ                 e
                 ınes et types num´riques).
                                                    e e
      Lors d’une affectation si aucun indice n’est sp´cifi´ entre les crochets,
        ee              ea
      l’´l´ment est plac´ ` la fin du tableau.
                                   e          e
      La fonction array peut aussi ˆtre utilis´e pour initialiser un tableau.
...
$tab [0] = " un " ;
$tab [1] = " deux " ;
$tab [] = 3 ;                  e           a
                            // ´ quivalent ` $tab [2] = 3
$a = $tab [2]+5;            // a contient 8
$autre_tab = array (1 ,2 ,3);
$point [12][32] = " rouge " ;
...


http://jb.vioix.free.fr                                                   13-36
                           Syntaxe du langage   Les variables


Les variables : les tableaux associatifs

                                                                         u
      Les tableaux associatifs (ou tables de hachage) sont des tableaux o`
          ee                                             ıne
      la r´f´rence n’est pas un indice mais une clef (chaˆ ou type
           e
      num´rique).
                                          e                               e
      Pour le langage, il n’y a pas de diff´rence entre les tableaux indici´s et
      les tableaux associatifs.
                         e
      Ils utilisent la mˆme syntaxe que les tableaux, la fonction array peut
             e         e                                             e
      aussi ˆtre utilis´e pour construire un tableau associatif, l’op´rateur =>
        e
      d´finie la relation clef=>valeur.




http://jb.vioix.free.fr                                                    14-36
                           Syntaxe du langage   Les variables


Les variables : les tableaux associatifs

                                                                         u
      Les tableaux associatifs (ou tables de hachage) sont des tableaux o`
          ee                                             ıne
      la r´f´rence n’est pas un indice mais une clef (chaˆ ou type
           e
      num´rique).
                                          e                               e
      Pour le langage, il n’y a pas de diff´rence entre les tableaux indici´s et
      les tableaux associatifs.
                         e
      Ils utilisent la mˆme syntaxe que les tableaux, la fonction array peut
             e         e                                             e
      aussi ˆtre utilis´e pour construire un tableau associatif, l’op´rateur =>
        e
      d´finie la relation clef=>valeur.




http://jb.vioix.free.fr                                                    14-36
                                   Syntaxe du langage   Les variables


Les variables : les tableaux associatifs

                                                                         u
      Les tableaux associatifs (ou tables de hachage) sont des tableaux o`
          ee                                             ıne
      la r´f´rence n’est pas un indice mais une clef (chaˆ ou type
           e
      num´rique).
                                          e                               e
      Pour le langage, il n’y a pas de diff´rence entre les tableaux indici´s et
      les tableaux associatifs.
                         e
      Ils utilisent la mˆme syntaxe que les tableaux, la fonction array peut
             e         e                                             e
      aussi ˆtre utilis´e pour construire un tableau associatif, l’op´rateur =>
        e
      d´finie la relation clef=>valeur.
$livres = array ( " Le seigneur des anneaux " => " Tolkien " ,
                                 " L ’ appel de Cthulhu " => " Lovecraft " ,
                                 " Les fourmis " => " Werber " ,
                                 " La ligne verte " => " King " );
...
                         `     ´
$livres [ " Harry Potter a l ’ e cole des sorciers " ] = " Rowlin g ";
...
$titre = " Les fourmis " ;
echo " L ’ auteur du livre ". $titre . " est : ". $livres [ $titre ];



http://jb.vioix.free.fr                                                        14-36
                          Syntaxe du langage   Les variables


Les variables : les constantes



                                            a                    e
      Il est possible d’associer un symbole ` une constante inalt´rable.
                                        e                         e
      Ces constantes sont souvent utilis´es pour stocker des param`tres
      dans un programme.
      Par convention, les noms de constantes sont en majuscules pour les
         e
      diff´rencier des variables.
                                     e
      La commande define permet de d´finir une constante que ce soit un
              e                ıne        e
      type num´rique ou une chaˆ de caract`res




http://jb.vioix.free.fr                                                    15-36
                          Syntaxe du langage   Les variables


Les variables : les constantes



                                            a                    e
      Il est possible d’associer un symbole ` une constante inalt´rable.
                                        e                         e
      Ces constantes sont souvent utilis´es pour stocker des param`tres
      dans un programme.
      Par convention, les noms de constantes sont en majuscules pour les
         e
      diff´rencier des variables.
                                     e
      La commande define permet de d´finir une constante que ce soit un
              e                ıne        e
      type num´rique ou une chaˆ de caract`res




http://jb.vioix.free.fr                                                    15-36
                          Syntaxe du langage   Les variables


Les variables : les constantes



                                            a                    e
      Il est possible d’associer un symbole ` une constante inalt´rable.
                                        e                         e
      Ces constantes sont souvent utilis´es pour stocker des param`tres
      dans un programme.
      Par convention, les noms de constantes sont en majuscules pour les
         e
      diff´rencier des variables.
                                     e
      La commande define permet de d´finir une constante que ce soit un
              e                ıne        e
      type num´rique ou une chaˆ de caract`res




http://jb.vioix.free.fr                                                    15-36
                          Syntaxe du langage   Les variables


Les variables : les constantes



                                            a                    e
      Il est possible d’associer un symbole ` une constante inalt´rable.
                                        e                         e
      Ces constantes sont souvent utilis´es pour stocker des param`tres
      dans un programme.
      Par convention, les noms de constantes sont en majuscules pour les
         e
      diff´rencier des variables.
                                     e
      La commande define permet de d´finir une constante que ce soit un
              e                ıne        e
      type num´rique ou une chaˆ de caract`res




http://jb.vioix.free.fr                                                    15-36
                                       Syntaxe du langage   Les variables


Les variables : les constantes



                                             a                    e
       Il est possible d’associer un symbole ` une constante inalt´rable.
                                         e                         e
       Ces constantes sont souvent utilis´es pour stocker des param`tres
       dans un programme.
       Par convention, les noms de constantes sont en majuscules pour les
          e
       diff´rencier des variables.
                                      e
       La commande define permet de d´finir une constante que ce soit un
               e                ıne        e
       type num´rique ou une chaˆ de caract`res
define ( " PI " , 3.14159);
define ( " SERVEUR " , " serveur . fr " );




http://jb.vioix.free.fr                                                     15-36
                          Syntaxe du langage   Les variables


Les variables : fonctions utiles



                                  e
      La fonction isset est utilis´e pour tester l’existence d’une variable.
      La fonction empty permet de savoir si une variable contient une
      valeur non nulle (‘‘’’, ’’, ‘‘0’’, NULL, FALSE, un tableau
                         ee
      vide. . . sont des ´l´ments vides).
                                   e
      La fonction unset permet de d´truire une variable.
      Les fonctions is XXXX (is int,is float, ...) renseignent sur le
      type d’une variable.




http://jb.vioix.free.fr                                                   16-36
                          Syntaxe du langage   Les variables


Les variables : fonctions utiles



                                  e
      La fonction isset est utilis´e pour tester l’existence d’une variable.
      La fonction empty permet de savoir si une variable contient une
      valeur non nulle (‘‘’’, ’’, ‘‘0’’, NULL, FALSE, un tableau
                         ee
      vide. . . sont des ´l´ments vides).
                                   e
      La fonction unset permet de d´truire une variable.
      Les fonctions is XXXX (is int,is float, ...) renseignent sur le
      type d’une variable.




http://jb.vioix.free.fr                                                   16-36
                          Syntaxe du langage   Les variables


Les variables : fonctions utiles



                                  e
      La fonction isset est utilis´e pour tester l’existence d’une variable.
      La fonction empty permet de savoir si une variable contient une
      valeur non nulle (‘‘’’, ’’, ‘‘0’’, NULL, FALSE, un tableau
                         ee
      vide. . . sont des ´l´ments vides).
                                   e
      La fonction unset permet de d´truire une variable.
      Les fonctions is XXXX (is int,is float, ...) renseignent sur le
      type d’une variable.




http://jb.vioix.free.fr                                                   16-36
                          Syntaxe du langage   Les variables


Les variables : fonctions utiles



                                  e
      La fonction isset est utilis´e pour tester l’existence d’une variable.
      La fonction empty permet de savoir si une variable contient une
      valeur non nulle (‘‘’’, ’’, ‘‘0’’, NULL, FALSE, un tableau
                         ee
      vide. . . sont des ´l´ments vides).
                                   e
      La fonction unset permet de d´truire une variable.
      Les fonctions is XXXX (is int,is float, ...) renseignent sur le
      type d’une variable.




http://jb.vioix.free.fr                                                   16-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
if...else
                                               e
      La structure if...else permet de r´aliser des tests.
      Les tests usuels sont possibles (==, >, <, >=, <=, != ) et peuvent
      e            e               e             e
      ˆtre combin´s avec les op´rateurs bool´ens ET (&&), OU (||),
      OU-EXCLUSIF (xor)
                                  e     e                    e     e
      Il est possible de tester l’´galit´ de type avant de l’´galit´ de valeur
                e              e
      avec l’op´rateur identit´ ===
                         e
      Des tests imbriqu´s (if...else...if...else) peuvent ˆtre ´critse e
      elseif




http://jb.vioix.free.fr                                                     17-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
if...else
                                               e
      La structure if...else permet de r´aliser des tests.
      Les tests usuels sont possibles (==, >, <, >=, <=, != ) et peuvent
      e            e               e             e
      ˆtre combin´s avec les op´rateurs bool´ens ET (&&), OU (||),
      OU-EXCLUSIF (xor)
                                  e     e                    e     e
      Il est possible de tester l’´galit´ de type avant de l’´galit´ de valeur
                e              e
      avec l’op´rateur identit´ ===
                         e
      Des tests imbriqu´s (if...else...if...else) peuvent ˆtre ´critse e
      elseif




http://jb.vioix.free.fr                                                     17-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
if...else
                                               e
      La structure if...else permet de r´aliser des tests.
      Les tests usuels sont possibles (==, >, <, >=, <=, != ) et peuvent
      e            e               e             e
      ˆtre combin´s avec les op´rateurs bool´ens ET (&&), OU (||),
      OU-EXCLUSIF (xor)
                                  e     e                    e     e
      Il est possible de tester l’´galit´ de type avant de l’´galit´ de valeur
                e              e
      avec l’op´rateur identit´ ===
                         e
      Des tests imbriqu´s (if...else...if...else) peuvent ˆtre ´critse e
      elseif




http://jb.vioix.free.fr                                                     17-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
if...else
                                               e
      La structure if...else permet de r´aliser des tests.
      Les tests usuels sont possibles (==, >, <, >=, <=, != ) et peuvent
      e            e               e             e
      ˆtre combin´s avec les op´rateurs bool´ens ET (&&), OU (||),
      OU-EXCLUSIF (xor)
                                  e     e                    e     e
      Il est possible de tester l’´galit´ de type avant de l’´galit´ de valeur
                e              e
      avec l’op´rateur identit´ ===
                         e
      Des tests imbriqu´s (if...else...if...else) peuvent ˆtre ´critse e
      elseif




http://jb.vioix.free.fr                                                     17-36
                                   Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
if...else
                                               e
      La structure if...else permet de r´aliser des tests.
      Les tests usuels sont possibles (==, >, <, >=, <=, != ) et peuvent
      e            e               e             e
      ˆtre combin´s avec les op´rateurs bool´ens ET (&&), OU (||),
      OU-EXCLUSIF (xor)
                                  e     e                    e     e
      Il est possible de tester l’´galit´ de type avant de l’´galit´ de valeur
                e              e
      avec l’op´rateur identit´ ===
                         e
      Des tests imbriqu´s (if...else...if...else) peuvent ˆtre ´critse e
      elseif
$note =12.9;
if ( $note <10){
                     ^          e
    echo " <p > Vous e tes recal´ </p > " ;
} elseif ( ( $note >=12) && ( $note <14) ){
    echo " <p > Mention bien </p > ";
} elseif ( ( $note >=14) && ( $note <16) ){
                           e
    echo " <p > Mention tr` s bien </ p > ";
} elseif ( $note >=16 ){
                           e                 e
    echo " <p > Mention tr` s bien avec f´ licications du jury </ p > " ;
} else {
    echo " <p > Mention passable <p > " ;
}
http://jb.vioix.free.fr                                                             17-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
switch...case

                                       e           e e
      Les instructions de tests imbriqu´es peuvent ˆtre ´crites en utilisant
      une structure switch...case.
      Cette structure permet de faire des choix parmi des valeurs
        e e               e                    e
      pr´d´finies, ce peut ˆtre des valeurs num´riques ou des chaˆınes de
            e
      caract`res.




http://jb.vioix.free.fr                                                    18-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
switch...case

                                       e           e e
      Les instructions de tests imbriqu´es peuvent ˆtre ´crites en utilisant
      une structure switch...case.
      Cette structure permet de faire des choix parmi des valeurs
        e e               e                    e
      pr´d´finies, ce peut ˆtre des valeurs num´riques ou des chaˆınes de
            e
      caract`res.




http://jb.vioix.free.fr                                                    18-36
                                   Syntaxe du langage   Les structures du langage


Les structures du langage : les instructions de test
switch...case

                                         e           e e
        Les instructions de tests imbriqu´es peuvent ˆtre ´crites en utilisant
        une structure switch...case.
        Cette structure permet de faire des choix parmi des valeurs
          e e               e                    e
        pr´d´finies, ce peut ˆtre des valeurs num´riques ou des chaˆınes de
              e
        caract`res.
...
      switch ( $menu ) {
                  e
      case " entr´ e " :
                                   e
        echo " Choisissez une entr´ e : < br /> ";
        break ;
      case " plat " :
        echo " Choisissez un plat < br /> " ;
        break ;
      case " dessert ":
        echo " Choisissez un dessert < br /> " ;
        break ;
      default :
                                       ^
             echo " Vous allez bientot e tre servi ... <br /> " ;
      }
...


http://jb.vioix.free.fr                                                             18-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles for


      La boucle la plus simple est la boucle for.
                            e
      Elle a exactement la mˆme syntaxe qu’en C, Java, ... :
      for(exp1 ;exp2 ;exp3){...}
            e                                            e
      Au d´part de la boucle l’expression exp1 est trait´e. A chaque d´bute
          e                                            e    e
      d’it´ration, le contenu de l’expression exp2 est ´valu´, s’il est vrai, le
                                         e
      contenu des accolades est effectu´ puis l’expression exp3 est trait´e. e




http://jb.vioix.free.fr                                                      19-36
                           Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles for


      La boucle la plus simple est la boucle for.
                            e
      Elle a exactement la mˆme syntaxe qu’en C, Java, ... :
      for(exp1 ;exp2 ;exp3){...}
            e                                            e
      Au d´part de la boucle l’expression exp1 est trait´e. A chaque d´bute
          e                                            e    e
      d’it´ration, le contenu de l’expression exp2 est ´valu´, s’il est vrai, le
                                         e
      contenu des accolades est effectu´ puis l’expression exp3 est trait´e. e




http://jb.vioix.free.fr                                                      19-36
                                   Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles for


        La boucle la plus simple est la boucle for.
                              e
        Elle a exactement la mˆme syntaxe qu’en C, Java, ... :
        for(exp1 ;exp2 ;exp3){...}
              e                                            e
        Au d´part de la boucle l’expression exp1 est trait´e. A chaque d´bute
            e                                            e    e
        d’it´ration, le contenu de l’expression exp2 est ´valu´, s’il est vrai, le
                                           e
        contenu des accolades est effectu´ puis l’expression exp3 est trait´e. e
...
      for ( $i =0 ; $i <8; $i ++){
          $puissance = pow (2 , $i );
          echo " 2 puissance $i vaut : $puissance < br /> " ;
      }
...




http://jb.vioix.free.fr                                                             19-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

      La boucle foreach($tab as $value){...} permet de parcourir
               ee                          e        e
      tous les ´l´ments d’un tableau indici´ de mani`re rapide.
                                           ee
      La boucle commence par le premier ´l´ment du tableau, accessible par
                                a          e          ee
      la variable $value, puis, ` chaque it´ration, l’´l´ment suivant du
                                                 e                  ee
      tableau est pris en compte. La boucle s’arrˆte quand tous les ´l´ments
          ee
      ont ´t´ parcourus.
      Pour un tableau associatif la syntaxe est foreach($tab as
      $key=>$value){...}




http://jb.vioix.free.fr                                                    20-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

      La boucle foreach($tab as $value){...} permet de parcourir
               ee                          e        e
      tous les ´l´ments d’un tableau indici´ de mani`re rapide.
                                           ee
      La boucle commence par le premier ´l´ment du tableau, accessible par
                                a          e          ee
      la variable $value, puis, ` chaque it´ration, l’´l´ment suivant du
                                                 e                  ee
      tableau est pris en compte. La boucle s’arrˆte quand tous les ´l´ments
          ee
      ont ´t´ parcourus.
      Pour un tableau associatif la syntaxe est foreach($tab as
      $key=>$value){...}




http://jb.vioix.free.fr                                                    20-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

      La boucle foreach($tab as $value){...} permet de parcourir
               ee                          e        e
      tous les ´l´ments d’un tableau indici´ de mani`re rapide.
                                           ee
      La boucle commence par le premier ´l´ment du tableau, accessible par
                                a          e          ee
      la variable $value, puis, ` chaque it´ration, l’´l´ment suivant du
                                                 e                  ee
      tableau est pris en compte. La boucle s’arrˆte quand tous les ´l´ments
          ee
      ont ´t´ parcourus.
      Pour un tableau associatif la syntaxe est foreach($tab as
      $key=>$value){...}




http://jb.vioix.free.fr                                                    20-36
                                     Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

       La boucle foreach($tab as $value){...} permet de parcourir
                ee                          e        e
       tous les ´l´ments d’un tableau indici´ de mani`re rapide.
                                            ee
       La boucle commence par le premier ´l´ment du tableau, accessible par
                                 a          e          ee
       la variable $value, puis, ` chaque it´ration, l’´l´ment suivant du
                                                  e                  ee
       tableau est pris en compte. La boucle s’arrˆte quand tous les ´l´ments
           ee
       ont ´t´ parcourus.
       Pour un tableau associatif la syntaxe est foreach($tab as
       $key=>$value){...}
...
$livres = array ( " Le seigneur des anneaux " => " Tolkien " ,
                              "L ’ appel de Cthulhu " => " Lovecraft " ,
                              " Les fourmis " => " Werber " ,
                              " La ligne verte " => " King " );
foreach ( $livres as $titre => $auteur ){
                                            ´
    echo " < strong > $auteur </ strong > a e crit <em > $titre </ em > < br / > " ;
}
...



http://jb.vioix.free.fr                                                                20-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

                                                               e
      Si on modifie la variable $value, les modifications ne se r´percutent
      pas sur le tableau.
                                    ee
      Il faut faire un passage par r´f´rence pour pouvoir modifier le tableau
                                e
      en ajoutant & lors de la d´claration : foreach($tab as
      &$value){...} ou foreach($tab as $key=>&$value){...}




http://jb.vioix.free.fr                                                    21-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

                                                               e
      Si on modifie la variable $value, les modifications ne se r´percutent
      pas sur le tableau.
                                    ee
      Il faut faire un passage par r´f´rence pour pouvoir modifier le tableau
                                e
      en ajoutant & lors de la d´claration : foreach($tab as
      &$value){...} ou foreach($tab as $key=>&$value){...}




http://jb.vioix.free.fr                                                    21-36
                               Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles foreach

                                                               e
      Si on modifie la variable $value, les modifications ne se r´percutent
      pas sur le tableau.
                                    ee
      Il faut faire un passage par r´f´rence pour pouvoir modifier le tableau
                                e
      en ajoutant & lors de la d´claration : foreach($tab as
      &$value){...} ou foreach($tab as $key=>&$value){...}
...
$tableau = array (1 , 2, 3, 4, 5, 6);
foreach ( $tableau as $valeur ) {
    echo " $valeur   ";
}
echo " < br /> ";
foreach ( $tableau as & $val ) {
     $val = $val * 2;
}
foreach ( $tableau as $valeur ) {
    echo " $valeur    ";
}
echo " < br /> ";
...




http://jb.vioix.free.fr                                                         21-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles while et
do...while


              e e
      Pour r´p´ter un bloc d’instruction tant qu’une expression est vraie, on
      utilise les boucles while et do...while
                                                                  e
      Dans la boucle while(expression){...}, l’expression est test´e
                       e
      avant chaque it´ration, dans la boucle do{...}while(expression),
                           e     e           e
      l’expression est test´e apr`s chaque it´ration.




http://jb.vioix.free.fr                                                    22-36
                          Syntaxe du langage   Les structures du langage


Les structures du langage : les boucles while et
do...while


              e e
      Pour r´p´ter un bloc d’instruction tant qu’une expression est vraie, on
      utilise les boucles while et do...while
                                                                  e
      Dans la boucle while(expression){...}, l’expression est test´e
                       e
      avant chaque it´ration, dans la boucle do{...}while(expression),
                           e     e           e
      l’expression est test´e apr`s chaque it´ration.




http://jb.vioix.free.fr                                                    22-36
                                  Syntaxe du langage    Les structures du langage


Les structures du langage : les boucles while et
do...while


               e e
       Pour r´p´ter un bloc d’instruction tant qu’une expression est vraie, on
       utilise les boucles while et do...while
                                                                   e
       Dans la boucle while(expression){...}, l’expression est test´e
                        e
       avant chaque it´ration, dans la boucle do{...}while(expression),
                            e     e           e
       l’expression est test´e apr`s chaque it´ration.
...
do {
    $i = rand ();
} while ( $i %2==1);
                        e
echo " <p > Un nombre al´ atoire paire : $i </p > " ;
...




http://jb.vioix.free.fr                                                             22-36
                          Syntaxe du langage   Les fonctions


                  e
Les fonctions : pr´sentation


                        e e
      Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc
      d’instructions.
                                         e
      Il est possible de passer des param`tres et de renvoyer une valeur.
      Pour retourner une valeur, on utilise le mot-clef return. Le type de
                                        e e             e
      retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.




http://jb.vioix.free.fr                                                     23-36
                          Syntaxe du langage   Les fonctions


                  e
Les fonctions : pr´sentation


                        e e
      Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc
      d’instructions.
                                         e
      Il est possible de passer des param`tres et de renvoyer une valeur.
      Pour retourner une valeur, on utilise le mot-clef return. Le type de
                                        e e             e
      retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.




http://jb.vioix.free.fr                                                     23-36
                          Syntaxe du langage   Les fonctions


                  e
Les fonctions : pr´sentation


                        e e
      Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc
      d’instructions.
                                         e
      Il est possible de passer des param`tres et de renvoyer une valeur.
      Pour retourner une valeur, on utilise le mot-clef return. Le type de
                                        e e             e
      retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.




http://jb.vioix.free.fr                                                     23-36
                                Syntaxe du langage   Les fonctions


                  e
Les fonctions : pr´sentation


                        e e
      Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc
      d’instructions.
                                         e
      Il est possible de passer des param`tres et de renvoyer une valeur.
      Pour retourner une valeur, on utilise le mot-clef return. Le type de
                                        e e             e
      retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.
function addition ( $a , $b )
{
    $somme = $a + $b ;
    return $somme ;
}
// ...
$u =1;
$v =2;
$w = addition ( $u , $v );
// ...




http://jb.vioix.free.fr                                                     23-36
                           Syntaxe du langage   Les fonctions


                         e
Les fonctions : les param`tres



            e                              e                               ee
      Par d´faut, les variables sont pass´es par valeur, si elles sont alt´r´es
      a      e
      ` l’int´rieur de la fonction, elles gardent leurs valeurs hors de la
      fonction.
                                                   e        e       ee
      Pour pouvoir modifier une variable, elle doit ˆtre pass´e par r´f´rence.
                  e                e e
      Lors de la d´claration, on pr´c`de le nom de la variable du signe &
               e
      dans la d´claration de fonction.
                           e e                                 e
      Il est possible de pr´d´finir une valeur pour chaque param`tre.




http://jb.vioix.free.fr                                                     24-36
                           Syntaxe du langage   Les fonctions


                         e
Les fonctions : les param`tres



            e                              e                               ee
      Par d´faut, les variables sont pass´es par valeur, si elles sont alt´r´es
      a      e
      ` l’int´rieur de la fonction, elles gardent leurs valeurs hors de la
      fonction.
                                                   e        e       ee
      Pour pouvoir modifier une variable, elle doit ˆtre pass´e par r´f´rence.
                  e                e e
      Lors de la d´claration, on pr´c`de le nom de la variable du signe &
               e
      dans la d´claration de fonction.
                           e e                                 e
      Il est possible de pr´d´finir une valeur pour chaque param`tre.




http://jb.vioix.free.fr                                                     24-36
                               Syntaxe du langage   Les fonctions


                         e
Les fonctions : les param`tres

            e                              e                               ee
      Par d´faut, les variables sont pass´es par valeur, si elles sont alt´r´es
      ` l’int´rieur de la fonction, elles gardent leurs valeurs hors de la
      a      e
      fonction.
                                                   e        e       ee
      Pour pouvoir modifier une variable, elle doit ˆtre pass´e par r´f´rence.
                  e                e e
      Lors de la d´claration, on pr´c`de le nom de la variable du signe &
               e
      dans la d´claration de fonction.
                           e e                                 e
      Il est possible de pr´d´finir une valeur pour chaque param`tre.
function addition ( $a , $b , & $s )
{
    $s = $a + $b ;
}
// ...
$u =1;
$v =2;
$w =5;
addition ($u , $v , $w );     // $w vaut maintenant 3
// ...




http://jb.vioix.free.fr                                                     24-36
                           Syntaxe du langage   Les fonctions


                         e
Les fonctions : les param`tres



            e                              e                               ee
      Par d´faut, les variables sont pass´es par valeur, si elles sont alt´r´es
      a      e
      ` l’int´rieur de la fonction, elles gardent leurs valeurs hors de la
      fonction.
                                                   e        e       ee
      Pour pouvoir modifier une variable, elle doit ˆtre pass´e par r´f´rence.
                  e                e e
      Lors de la d´claration, on pr´c`de le nom de la variable du signe &
               e
      dans la d´claration de fonction.
                           e e                                 e
      Il est possible de pr´d´finir une valeur pour chaque param`tre.




http://jb.vioix.free.fr                                                     24-36
                                   Syntaxe du langage   Les fonctions


                         e
Les fonctions : les param`tres

            e                              e                               ee
      Par d´faut, les variables sont pass´es par valeur, si elles sont alt´r´es
      ` l’int´rieur de la fonction, elles gardent leurs valeurs hors de la
      a      e
      fonction.
                                                   e        e       ee
      Pour pouvoir modifier une variable, elle doit ˆtre pass´e par r´f´rence.
                  e                e e
      Lors de la d´claration, on pr´c`de le nom de la variable du signe &
               e
      dans la d´claration de fonction.
                           e e                                 e
      Il est possible de pr´d´finir une valeur pour chaque param`tre.
function Connexion ( $user , $pass , $serveur = " chezmoi . com " )
{
    // ...
}
// ...
// Connexion au serveur monautreserrveu r . org
Connexion ( " jb " ," toto " ," monautreserrve ur . org " );
// ...
// Connexion au serveur chezmoi . com
Connexion ( " jb " ," toto " );




http://jb.vioix.free.fr                                                     24-36
                           Syntaxe du langage   Les fonctions


Les fonctions : les variables statiques


                                                                 e         e
      A chaque appel d’une fonction les variables internes sont r´initialis´es.
      Les variables statiques conservent leurs valeurs entre chaque appels de
      la fonction.
                                a      e
      Elles ne sont visibles qu’` l’int´rieur de la fonction dans laquelle elles
          ee e e
      ont ´t´ d´clar´es.
                                                         e       a
      Avant d’utiliser une variable statique on doit la d´clarer ` l’aide du
      mot-clef static :




http://jb.vioix.free.fr                                                      25-36
                           Syntaxe du langage   Les fonctions


Les fonctions : les variables statiques


                                                                 e         e
      A chaque appel d’une fonction les variables internes sont r´initialis´es.
      Les variables statiques conservent leurs valeurs entre chaque appels de
      la fonction.
                                a      e
      Elles ne sont visibles qu’` l’int´rieur de la fonction dans laquelle elles
          ee e e
      ont ´t´ d´clar´es.
                                                         e       a
      Avant d’utiliser une variable statique on doit la d´clarer ` l’aide du
      mot-clef static :




http://jb.vioix.free.fr                                                      25-36
                           Syntaxe du langage   Les fonctions


Les fonctions : les variables statiques


                                                                 e         e
      A chaque appel d’une fonction les variables internes sont r´initialis´es.
      Les variables statiques conservent leurs valeurs entre chaque appels de
      la fonction.
                                a      e
      Elles ne sont visibles qu’` l’int´rieur de la fonction dans laquelle elles
          ee e e
      ont ´t´ d´clar´es.
                                                         e       a
      Avant d’utiliser une variable statique on doit la d´clarer ` l’aide du
      mot-clef static :




http://jb.vioix.free.fr                                                      25-36
                           Syntaxe du langage   Les fonctions


Les fonctions : les variables statiques


                                                                 e         e
      A chaque appel d’une fonction les variables internes sont r´initialis´es.
      Les variables statiques conservent leurs valeurs entre chaque appels de
      la fonction.
                                a      e
      Elles ne sont visibles qu’` l’int´rieur de la fonction dans laquelle elles
          ee e e
      ont ´t´ d´clar´es.
                                                         e       a
      Avant d’utiliser une variable statique on doit la d´clarer ` l’aide du
      mot-clef static :




http://jb.vioix.free.fr                                                      25-36
                                  Syntaxe du langage   Les fonctions


Les fonctions : les variables statiques


                                                                 e         e
      A chaque appel d’une fonction les variables internes sont r´initialis´es.
      Les variables statiques conservent leurs valeurs entre chaque appels de
      la fonction.
                                a      e
      Elles ne sont visibles qu’` l’int´rieur de la fonction dans laquelle elles
          ee e e
      ont ´t´ d´clar´es.
                                                         e       a
      Avant d’utiliser une variable statique on doit la d´clarer ` l’aide du
      mot-clef static :
function compteur (){
   static $n =0;
   $n ++;
                        ´ e       e
   echo " La fonction a e t´ appel´ e : ". $n ." fois . < br /> " ;
}




http://jb.vioix.free.fr                                                      25-36
                          Syntaxe du langage   Les fonctions


Les fonctions : les variables globales



                  e e                          e         e
      La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des
      variables globales.
                                    e
      Le mot clef global permet de d´finir une variable globale.
                                      e          e           e
      Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse.
                                                     e     e
      Elles rendent les scripts peu lisibles et peu s´curis´s.




http://jb.vioix.free.fr                                                   26-36
                          Syntaxe du langage   Les fonctions


Les fonctions : les variables globales



                  e e                          e         e
      La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des
      variables globales.
                                    e
      Le mot clef global permet de d´finir une variable globale.
                                      e          e           e
      Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse.
                                                     e     e
      Elles rendent les scripts peu lisibles et peu s´curis´s.
...
global $user ;
...




http://jb.vioix.free.fr                                                   26-36
                          Syntaxe du langage   Les fonctions


Les fonctions : les variables globales



                  e e                          e         e
      La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des
      variables globales.
                                    e
      Le mot clef global permet de d´finir une variable globale.
                                      e          e           e
      Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse.
                                                     e     e
      Elles rendent les scripts peu lisibles et peu s´curis´s.
...
global $user ;
...




http://jb.vioix.free.fr                                                   26-36
                           Syntaxe du langage   Les fonctions


Les fonctions : inclusion de scripts

                                  e                         e
      Pour organiser un site, on s´pare les fonctions en diff´rents fichiers.
      Quatre fonctions permettent d’inclure des fichiers : require,
      require once, include et include once.
                                                                a
      Les instructions require et require once conduisent ` l’arrˆt du e
      script en cas d’erreur dans un script inclus alors que les instructions
      include et include once ne provoquent qu’une alerte (donc le
      script continu).
                                             e           e
      Lors d’imbrications multiples le probl`me de la red´claration peut se
                  e
      poser. Pour ´viter ceci, les fonctions require once et include once
       e                               ea e e
      v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.




http://jb.vioix.free.fr                                                    27-36
                           Syntaxe du langage   Les fonctions


Les fonctions : inclusion de scripts

                                  e                         e
      Pour organiser un site, on s´pare les fonctions en diff´rents fichiers.
      Quatre fonctions permettent d’inclure des fichiers : require,
      require once, include et include once.
                                                                a
      Les instructions require et require once conduisent ` l’arrˆt du e
      script en cas d’erreur dans un script inclus alors que les instructions
      include et include once ne provoquent qu’une alerte (donc le
      script continu).
                                             e           e
      Lors d’imbrications multiples le probl`me de la red´claration peut se
                  e
      poser. Pour ´viter ceci, les fonctions require once et include once
       e                               ea e e
      v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.




http://jb.vioix.free.fr                                                    27-36
                           Syntaxe du langage   Les fonctions


Les fonctions : inclusion de scripts

                                  e                         e
      Pour organiser un site, on s´pare les fonctions en diff´rents fichiers.
      Quatre fonctions permettent d’inclure des fichiers : require,
      require once, include et include once.
                                                                a
      Les instructions require et require once conduisent ` l’arrˆt du e
      script en cas d’erreur dans un script inclus alors que les instructions
      include et include once ne provoquent qu’une alerte (donc le
      script continu).
                                             e           e
      Lors d’imbrications multiples le probl`me de la red´claration peut se
                  e
      poser. Pour ´viter ceci, les fonctions require once et include once
       e                               ea e e
      v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.




http://jb.vioix.free.fr                                                    27-36
                           Syntaxe du langage   Les fonctions


Les fonctions : inclusion de scripts

                                  e                         e
      Pour organiser un site, on s´pare les fonctions en diff´rents fichiers.
      Quatre fonctions permettent d’inclure des fichiers : require,
      require once, include et include once.
                                                                a
      Les instructions require et require once conduisent ` l’arrˆt du e
      script en cas d’erreur dans un script inclus alors que les instructions
      include et include once ne provoquent qu’une alerte (donc le
      script continu).
                                             e           e
      Lors d’imbrications multiples le probl`me de la red´claration peut se
                  e
      poser. Pour ´viter ceci, les fonctions require once et include once
       e                               ea e e
      v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.




http://jb.vioix.free.fr                                                    27-36
                              Syntaxe du langage   Les fonctions


Les fonctions : inclusion de scripts

                                   e                         e
       Pour organiser un site, on s´pare les fonctions en diff´rents fichiers.
       Quatre fonctions permettent d’inclure des fichiers : require,
       require once, include et include once.
                                                                 a
       Les instructions require et require once conduisent ` l’arrˆt du e
       script en cas d’erreur dans un script inclus alors que les instructions
       include et include once ne provoquent qu’une alerte (donc le
       script continu).
                                              e           e
       Lors d’imbrications multiples le probl`me de la red´claration peut se
                   e
       poser. Pour ´viter ceci, les fonctions require once et include once
        e                               ea e e
       v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.
...
include ( " Menu . php " );
...




http://jb.vioix.free.fr                                                     27-36
                          Interaction avec le client   Les formulaires


Les formulaires



      Les tableaux super-globaux $ GET et $ POST sont des tableaux
                                           e
      associatifs contenant les variables d´finies dans les formulaires.
                               ea      e                  e
      Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom.
               ee              e   a
      Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer
                   e             e
      par [] pour ˆtre transform´ en tableau.
                                                             ee      e
      Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la
         e
      m´thode POST du client vers le serveur.




http://jb.vioix.free.fr                                                   28-36
                          Interaction avec le client   Les formulaires


Les formulaires



      Les tableaux super-globaux $ GET et $ POST sont des tableaux
                                           e
      associatifs contenant les variables d´finies dans les formulaires.
                               ea      e                  e
      Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom.
               ee              e   a
      Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer
                   e             e
      par [] pour ˆtre transform´ en tableau.
                                                             ee      e
      Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la
         e
      m´thode POST du client vers le serveur.




http://jb.vioix.free.fr                                                   28-36
                               Interaction avec le client   Les formulaires


Les formulaires

      Les tableaux super-globaux $ GET et $ POST sont des tableaux
                                           e
      associatifs contenant les variables d´finies dans les formulaires.
                               ea      e                  e
      Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom.
               ee              e   a
      Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer
                   e             e
      par [] pour ˆtre transform´ en tableau.
                                                             ee      e
      Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la
         e
      m´thode POST du client vers le serveur.
...
< form action =" result . php " method = " get " >
    < input type =" text " name =" Nom " value =" Saisissez votre nom " size =" 25 " maxlength = " 25 " / >
    <p > Quels sont vos loisirs ? < br / >
    < input type =" checkbox " name =" Loisir [] " value = " Cinema " / > Cin´ ma < br / >
                                                                             e
    < input type =" checkbox " name =" Loisir [] " value = " Lecture " / > Lecture < br / >
    < input type =" checkbox " name =" Loisir [] " value = " Musique " / > Musique < br / >
    < input type =" checkbox " name =" Loisir [] " value = " Sport " / > Sport < br / >
    </ p >
    < input type =" submit " / >
</ form >
...


http://jb.vioix.free.fr                                                                                28-36
                               Interaction avec le client   Les formulaires


Les formulaires
      Les tableaux super-globaux $ GET et $ POST sont des tableaux
                                            e
      associatifs contenant les variables d´finies dans les formulaires.
                                 ea       e                    e
      Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom.
                ee              e    a
      Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer
                    e             e
      par [] pour ˆtre transform´ en tableau.
                                                              ee      e
      Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la
         e
      m´thode POST du client vers le serveur.
...
<p >
<h1 > Fiche de renseignements </ h1 >
<? php
     $nom = $_GET [ " Nom " ];
     echo ( " <p > " );
     echo " Bonjour " . $nom . " !< br /> ";
     echo " Vos loisir sont : < br /> ";
     foreach ( $_GET [" Loisir "] as $valeur ){
        echo " $valeur <br /> " ;
     }
?>
</p >
...


http://jb.vioix.free.fr                                                       28-36
                          Interaction avec le client   Les formulaires


Les formulaires



      Les tableaux super-globaux $ GET et $ POST sont des tableaux
                                           e
      associatifs contenant les variables d´finies dans les formulaires.
                               ea      e                  e
      Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom.
               ee              e   a
      Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer
                   e             e
      par [] pour ˆtre transform´ en tableau.
                                                             ee      e
      Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la
         e
      m´thode POST du client vers le serveur.




http://jb.vioix.free.fr                                                   28-36
                           Interaction avec le client   Les outils de support de sessions web


  e           e e
Pr´sentation g´n´rale




                                    e             e
      Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page.
              e                                                       a
      Il est n´cessaire de pouvoir passer des informations d’une page `
      l’autre.
               e
      Deux m´canismes sont possibles en PHP :
                              e
             Les cookies stock´s sur le poste client,
                                 e
             Les sessions support´es par le serveur.




http://jb.vioix.free.fr                                                                         29-36
                           Interaction avec le client   Les outils de support de sessions web


  e           e e
Pr´sentation g´n´rale




                                    e             e
      Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page.
              e                                                       a
      Il est n´cessaire de pouvoir passer des informations d’une page `
      l’autre.
               e
      Deux m´canismes sont possibles en PHP :
                              e
             Les cookies stock´s sur le poste client,
                                 e
             Les sessions support´es par le serveur.




http://jb.vioix.free.fr                                                                         29-36
                           Interaction avec le client   Les outils de support de sessions web


  e           e e
Pr´sentation g´n´rale




                                    e             e
      Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page.
              e                                                       a
      Il est n´cessaire de pouvoir passer des informations d’une page `
      l’autre.
               e
      Deux m´canismes sont possibles en PHP :
                              e
             Les cookies stock´s sur le poste client,
                                 e
             Les sessions support´es par le serveur.




http://jb.vioix.free.fr                                                                         29-36
                           Interaction avec le client   Les outils de support de sessions web


  e           e e
Pr´sentation g´n´rale




                                    e             e
      Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page.
              e                                                       a
      Il est n´cessaire de pouvoir passer des informations d’une page `
      l’autre.
               e
      Deux m´canismes sont possibles en PHP :
                              e
             Les cookies stock´s sur le poste client,
                                 e
             Les sessions support´es par le serveur.




http://jb.vioix.free.fr                                                                         29-36
                           Interaction avec le client   Les outils de support de sessions web


  e           e e
Pr´sentation g´n´rale




                                    e             e
      Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page.
              e                                                       a
      Il est n´cessaire de pouvoir passer des informations d’une page `
      l’autre.
               e
      Deux m´canismes sont possibles en PHP :
                              e
             Les cookies stock´s sur le poste client,
                                 e
             Les sessions support´es par le serveur.




http://jb.vioix.free.fr                                                                         29-36
                          Interaction avec le client   Les cookies


                e
Les cookies : pr´sentation



      Un cookie est un petit fichier texte (ou la partie d’un fichier texte)
      qui permet de stocker des informations simples sur le poste client.
                              e                           e         a
      Les cookies sont envoy´s par le serveur dans les entˆtes HTTP `
      l’aide de la directive Set-Cookie.
                                                 e
      Un cookie a normalement une date de validit´ qui assure sa
      suppression par le navigateur.
                                       e                  ee
      Les cookies sont souvent utilis´s pour garder les pr´f´rences de
      l’utilisateur entre deux visites du site.




http://jb.vioix.free.fr                                                  30-36
                          Interaction avec le client   Les cookies


                e
Les cookies : pr´sentation



      Un cookie est un petit fichier texte (ou la partie d’un fichier texte)
      qui permet de stocker des informations simples sur le poste client.
                              e                           e         a
      Les cookies sont envoy´s par le serveur dans les entˆtes HTTP `
      l’aide de la directive Set-Cookie.
                                                 e
      Un cookie a normalement une date de validit´ qui assure sa
      suppression par le navigateur.
                                       e                  ee
      Les cookies sont souvent utilis´s pour garder les pr´f´rences de
      l’utilisateur entre deux visites du site.




http://jb.vioix.free.fr                                                  30-36
                          Interaction avec le client   Les cookies


                e
Les cookies : pr´sentation



      Un cookie est un petit fichier texte (ou la partie d’un fichier texte)
      qui permet de stocker des informations simples sur le poste client.
                              e                           e         a
      Les cookies sont envoy´s par le serveur dans les entˆtes HTTP `
      l’aide de la directive Set-Cookie.
                                                 e
      Un cookie a normalement une date de validit´ qui assure sa
      suppression par le navigateur.
                                       e                  ee
      Les cookies sont souvent utilis´s pour garder les pr´f´rences de
      l’utilisateur entre deux visites du site.




http://jb.vioix.free.fr                                                  30-36
                          Interaction avec le client   Les cookies


                e
Les cookies : pr´sentation



      Un cookie est un petit fichier texte (ou la partie d’un fichier texte)
      qui permet de stocker des informations simples sur le poste client.
                              e                           e         a
      Les cookies sont envoy´s par le serveur dans les entˆtes HTTP `
      l’aide de la directive Set-Cookie.
                                                 e
      Un cookie a normalement une date de validit´ qui assure sa
      suppression par le navigateur.
                                       e                  ee
      Les cookies sont souvent utilis´s pour garder les pr´f´rences de
      l’utilisateur entre deux visites du site.




http://jb.vioix.free.fr                                                  30-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP


                                          e                       e
      La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
           e               e
      appel´e avant les entˆtes HTTP.
                               e
      Cette fonction a 6 param`tres tous optionnels sauf le premier :
             $name : le nom du cookie,
             $value : la valeur du cookie,
             $expires : la date d’expiration du cookie au format timestamp Unix,
                                          e             e                  e
             $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
             possible),
                                                    e
             $domain : le nom de domaine de validit´ du site,
                                                         a
             $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                        e    a
             HTTPS si ´gale ` 1.




http://jb.vioix.free.fr                                                         31-36
                                  Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP

                                             e                       e
         La fonction setcookie permet de cr´er un cookie, elle doit ˆtre
              e               e
         appel´e avant les entˆtes HTTP.
                                  e
         Cette fonction a 6 param`tres tous optionnels sauf le premier :
                $name : le nom du cookie,
                $value : la valeur du cookie,
                $expires : la date d’expiration du cookie au format timestamp Unix,
                                             e             e                  e
                $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire
                possible),
                                                       e
                $domain : le nom de domaine de validit´ du site,
                                                            a
                $secure : permet de crypter l’envoi cookie ` l’aide du protocole
                           e    a
                HTTPS si ´gale ` 1.
...
      setcookie (" themes " , " rouge " , time ()+30*24*60*60 , " " , " " , 0);   // cookie valable 30 jours
...




http://jb.vioix.free.fr                                                                              31-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP




                                   e
      La lecture des cookies est tr`s facile, PHP construit un tableau super
                                                            e a
      global $ COOKIE qui contient tous les cookies associ´s ` la page en
      cours.
      Pour supprimer un cookie il suffit de le renvoyer avec une date
       e    e
      d´pass´e.




http://jb.vioix.free.fr                                                 32-36
                                 Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP



                                      e
         La lecture des cookies est tr`s facile, PHP construit un tableau super
         global $ COOKIE qui contient tous les cookies associ´s ` la page en
                                                               e a
         cours.
         Pour supprimer un cookie il suffit de le renvoyer avec une date
          e    e
         d´pass´e.
...
      echo $_COOKIE [" themes " ];         // affiche " rouge "
...




http://jb.vioix.free.fr                                                     32-36
                          Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP




                                   e
      La lecture des cookies est tr`s facile, PHP construit un tableau super
                                                            e a
      global $ COOKIE qui contient tous les cookies associ´s ` la page en
      cours.
      Pour supprimer un cookie il suffit de le renvoyer avec une date
       e    e
      d´pass´e.




http://jb.vioix.free.fr                                                 32-36
                                Interaction avec le client   Les cookies


Les cookies : utilisation avec PHP



                                     e
        La lecture des cookies est tr`s facile, PHP construit un tableau super
        global $ COOKIE qui contient tous les cookies associ´s ` la page en
                                                              e a
        cours.
        Pour supprimer un cookie il suffit de le renvoyer avec une date
         e    e
        d´pass´e.
...
      setcookie (" themes " , " rouge " , time () -200); // cookie valable 30 jours
...




http://jb.vioix.free.fr                                                               32-36
                          Interaction avec le client   Les cookies


Les cookies : avantages et limitations



      Les cookies sont faciles d’emploi pour stocker rapidement des
      informations.
                                 e
      Les informations sont stock´es en clair, des informations ”sensibles”
                          e         e a
      ne doivent donc pas ˆtre stock´es ` l’aide de cookies.
           e                        e         e           a
      De mˆme, les cookies peuvent ˆtre copi´s d’un poste ` un autre ce
                        a                          e
      qui peut conduire ` des usurpations d’identit´s.
      L’utilisateur peut configurer son navigateur pour refuser les cookies.




http://jb.vioix.free.fr                                                  33-36
                          Interaction avec le client   Les cookies


Les cookies : avantages et limitations



      Les cookies sont faciles d’emploi pour stocker rapidement des
      informations.
                                 e
      Les informations sont stock´es en clair, des informations ”sensibles”
                          e         e a
      ne doivent donc pas ˆtre stock´es ` l’aide de cookies.
           e                        e         e           a
      De mˆme, les cookies peuvent ˆtre copi´s d’un poste ` un autre ce
                        a                          e
      qui peut conduire ` des usurpations d’identit´s.
      L’utilisateur peut configurer son navigateur pour refuser les cookies.




http://jb.vioix.free.fr                                                  33-36
                          Interaction avec le client   Les cookies


Les cookies : avantages et limitations



      Les cookies sont faciles d’emploi pour stocker rapidement des
      informations.
                                 e
      Les informations sont stock´es en clair, des informations ”sensibles”
                          e         e a
      ne doivent donc pas ˆtre stock´es ` l’aide de cookies.
           e                        e         e           a
      De mˆme, les cookies peuvent ˆtre copi´s d’un poste ` un autre ce
                        a                          e
      qui peut conduire ` des usurpations d’identit´s.
      L’utilisateur peut configurer son navigateur pour refuser les cookies.




http://jb.vioix.free.fr                                                  33-36
                          Interaction avec le client   Les cookies


Les cookies : avantages et limitations



      Les cookies sont faciles d’emploi pour stocker rapidement des
      informations.
                                 e
      Les informations sont stock´es en clair, des informations ”sensibles”
                          e         e a
      ne doivent donc pas ˆtre stock´es ` l’aide de cookies.
           e                        e         e           a
      De mˆme, les cookies peuvent ˆtre copi´s d’un poste ` un autre ce
                        a                          e
      qui peut conduire ` des usurpations d’identit´s.
      L’utilisateur peut configurer son navigateur pour refuser les cookies.




http://jb.vioix.free.fr                                                  33-36
                          Interaction avec le client   Les sessions


                e e     e
Les sessions : g´n´ralit´s



                            e              u
      Les sessions sont un m´canisme plus sˆr de stockage des informations.
                                  e
      Les informations sont stock´es sur le serveur et un identifiant de
                               e
      session unique est associ´ au client
                            e
      L’identifiant est envoy´ sous la forme d’un cookie si le navigateur les
      accepte.
                                  e            e
      Sinon, l’identifiant est pass´ comme param`tre dans l’adresse
         e
      (m´thode GET, variable PHPSESSID).




http://jb.vioix.free.fr                                                   34-36
                          Interaction avec le client   Les sessions


                e e     e
Les sessions : g´n´ralit´s



                            e              u
      Les sessions sont un m´canisme plus sˆr de stockage des informations.
                                  e
      Les informations sont stock´es sur le serveur et un identifiant de
                               e
      session unique est associ´ au client
                            e
      L’identifiant est envoy´ sous la forme d’un cookie si le navigateur les
      accepte.
                                  e            e
      Sinon, l’identifiant est pass´ comme param`tre dans l’adresse
         e
      (m´thode GET, variable PHPSESSID).




http://jb.vioix.free.fr                                                   34-36
                          Interaction avec le client   Les sessions


                e e     e
Les sessions : g´n´ralit´s



                            e              u
      Les sessions sont un m´canisme plus sˆr de stockage des informations.
                                  e
      Les informations sont stock´es sur le serveur et un identifiant de
                               e
      session unique est associ´ au client
                            e
      L’identifiant est envoy´ sous la forme d’un cookie si le navigateur les
      accepte.
                                  e            e
      Sinon, l’identifiant est pass´ comme param`tre dans l’adresse
         e
      (m´thode GET, variable PHPSESSID).




http://jb.vioix.free.fr                                                   34-36
                          Interaction avec le client   Les sessions


                e e     e
Les sessions : g´n´ralit´s



                            e              u
      Les sessions sont un m´canisme plus sˆr de stockage des informations.
                                  e
      Les informations sont stock´es sur le serveur et un identifiant de
                               e
      session unique est associ´ au client
                            e
      L’identifiant est envoy´ sous la forme d’un cookie si le navigateur les
      accepte.
                                  e            e
      Sinon, l’identifiant est pass´ comme param`tre dans l’adresse
         e
      (m´thode GET, variable PHPSESSID).




http://jb.vioix.free.fr                                                   34-36
                          Interaction avec le client   Les sessions


Les sessions : utilisation avec PHP



      Une session dure tant que le navigateur est ouvert ou en fonction de
      la valeur session.lifetime dans le fichier de configuration de PHP.
      Pour commencer une session on appelle la fonction
                                      e                        u
      session start() avant les entˆtes HTTP dans chaque page o` l’on
              e                     e
      doit acc´der aux valeurs stock´es.
      Les variables sont ensuite accessibles via un tableau super global
      $ SESSION accessible dans chaque fichier.
                       e     e                        e
      Une session peut ˆtre d´truite en utilisant la m´thode
      session destroy()




http://jb.vioix.free.fr                                                    35-36
                          Interaction avec le client   Les sessions


Les sessions : utilisation avec PHP



      Une session dure tant que le navigateur est ouvert ou en fonction de
      la valeur session.lifetime dans le fichier de configuration de PHP.
      Pour commencer une session on appelle la fonction
                                      e                        u
      session start() avant les entˆtes HTTP dans chaque page o` l’on
              e                     e
      doit acc´der aux valeurs stock´es.
      Les variables sont ensuite accessibles via un tableau super global
      $ SESSION accessible dans chaque fichier.
                       e     e                        e
      Une session peut ˆtre d´truite en utilisant la m´thode
      session destroy()




http://jb.vioix.free.fr                                                    35-36
                          Interaction avec le client   Les sessions


Les sessions : utilisation avec PHP



      Une session dure tant que le navigateur est ouvert ou en fonction de
      la valeur session.lifetime dans le fichier de configuration de PHP.
      Pour commencer une session on appelle la fonction
                                      e                        u
      session start() avant les entˆtes HTTP dans chaque page o` l’on
              e                     e
      doit acc´der aux valeurs stock´es.
      Les variables sont ensuite accessibles via un tableau super global
      $ SESSION accessible dans chaque fichier.
                       e     e                        e
      Une session peut ˆtre d´truite en utilisant la m´thode
      session destroy()




http://jb.vioix.free.fr                                                    35-36
                          Interaction avec le client   Les sessions


Les sessions : utilisation avec PHP



      Une session dure tant que le navigateur est ouvert ou en fonction de
      la valeur session.lifetime dans le fichier de configuration de PHP.
      Pour commencer une session on appelle la fonction
                                      e                        u
      session start() avant les entˆtes HTTP dans chaque page o` l’on
              e                     e
      doit acc´der aux valeurs stock´es.
      Les variables sont ensuite accessibles via un tableau super global
      $ SESSION accessible dans chaque fichier.
                       e     e                        e
      Une session peut ˆtre d´truite en utilisant la m´thode
      session destroy()




http://jb.vioix.free.fr                                                    35-36
                               Interaction avec le client   Les sessions


Les sessions : exemple

       e                              a
      R´alisation d’un style switcher ` partir de sessions :
          <? php
          session_start ();
          ...
          if ( $_SESSION [ " themes "] = " " ){
              $_SESSION [" themes " ] = " red ";
          }
          ...
          ?>
          <head >
          ...
          <? php
          if ( $_SESSION [ " themes "] === " red " ){
              echo ’< link href =" ThemeRouge . css " type =" text / css "
              rel =" stylesheet " media =" screen "/ > ’;
          } elseif ( $_SESSION [ " themes " ] === " blue " ){
              echo ’< link href =" ThemeBleu . css " type =" text / css "
              rel =" stylesheet " media =" screen "/ > ’;
          }...
          ?>
          </ head >
          ...




http://jb.vioix.free.fr                                                      36-36

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:49
posted:1/19/2013
language:
pages:149