Programmation du Web : Pr´sentation et description du e 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

Pr´sentation e

Historique de PHP

Historique de PHP

Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble e de scripts Perl destin´s au Web. e Le but ´tait de faciliter des tˆches r´p´titives. e a 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 e 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 e solutions comme les ASP, JSP, ... La derni`re version majeure est la 5 sortie en 2004. e

http://jb.vioix.free.fr

2-36

Pr´sentation e

Historique de PHP

Historique de PHP

Rasmus Lerdorf a cr´e PHP en 1995. A ce moment c’est un ensemble e de scripts Perl destin´s au Web. e Le but ´tait de faciliter des tˆches r´p´titives. e a 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 e 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 e solutions comme les ASP, JSP, ... La derni`re version majeure est la 5 sortie en 2004. e

http://jb.vioix.free.fr

2-36

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

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

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

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

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

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

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

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

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

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

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

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

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

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

php e Lorsque l’utilisateur (un navigateur) demande un fichier PHP au serveur. Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des e e e instructions PHP. remplac´es par leurs r´sultats.fr 5-36 . e e http://jb.free. le serveur le transmet ` l’interpr´teur PHP qui a 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 e e HTML). e Si le fichier existe. celui ci commence par v´rifier si il existe.vioix.Pr´sentation e Principe de fonctionnement Principe de fonctionnement Un fichier PHP est un fichier HTML ou XHTML dans lequel on ajout´ des instructions PHP plac´es entre les balises < ?php et ?> e e Il est sauvegard´ avec l’extension .

e Si le fichier existe. celui ci commence par v´rifier si il existe.fr 5-36 . remplac´es par leurs r´sultats.Pr´sentation e Principe de fonctionnement Principe de fonctionnement Un fichier PHP est un fichier HTML ou XHTML dans lequel on ajout´ des instructions PHP plac´es entre les balises < ?php et ?> e e Il est sauvegard´ avec l’extension . e e http://jb.vioix.php e Lorsque l’utilisateur (un navigateur) demande un fichier PHP au serveur. le serveur le transmet ` l’interpr´teur PHP qui a 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 e e HTML). Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des e e e instructions PHP.free.

e e http://jb.free. le serveur le transmet ` l’interpr´teur PHP qui a 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 e e HTML). remplac´es par leurs r´sultats. Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des e e e instructions PHP.vioix.fr 5-36 . celui ci commence par v´rifier si il existe.Pr´sentation e Principe de fonctionnement Principe de fonctionnement Un fichier PHP est un fichier HTML ou XHTML dans lequel on ajout´ des instructions PHP plac´es entre les balises < ?php et ?> e e Il est sauvegard´ avec l’extension .php e Lorsque l’utilisateur (un navigateur) demande un fichier PHP au serveur. e Si le fichier existe.

fr 5-36 .vioix. celui ci commence par v´rifier si il existe. e e http://jb.php e Lorsque l’utilisateur (un navigateur) demande un fichier PHP au serveur.free. Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des e e e instructions PHP. le serveur le transmet ` l’interpr´teur PHP qui a 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 e e HTML). remplac´es par leurs r´sultats. e Si le fichier existe.Pr´sentation e Principe de fonctionnement Principe de fonctionnement Un fichier PHP est un fichier HTML ou XHTML dans lequel on ajout´ des instructions PHP plac´es entre les balises < ?php et ?> e e Il est sauvegard´ avec l’extension .

Pr´sentation e Principe de fonctionnement Principe de fonctionnement Un fichier PHP est un fichier HTML ou XHTML dans lequel on ajout´ des instructions PHP plac´es entre les balises < ?php et ?> e e Il est sauvegard´ avec l’extension . celui ci commence par v´rifier si il existe.php e Lorsque l’utilisateur (un navigateur) demande un fichier PHP au serveur.fr 5-36 .free.vioix. remplac´es par leurs r´sultats. le serveur le transmet ` l’interpr´teur PHP qui a 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 e e HTML). e Si le fichier existe. Le serveur renvoie alors le fichier r´sultat ”d´barrass´” des e e e instructions PHP. e e http://jb.

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

.fr 7-36 . org /1999/ xhtml " xml : lang = " en " lang =" en " > <head > <title > Bonjour </ title > < meta http .free.equiv =" Content . ch arset = UTF -8 "/> </ head > <body > <? php echo " <h1 > Bonjour ! </ h1 > " . w3 .vioix. ?> </ body > </ html > Le code suivant est renvoy´ au navigateur : e http://jb. < html xmlns = " http :// www .Pr´sentation e Premier programme Premier programme Voici un premier programme en PHP : <! DOCTYPE ..Type " content = " text / html .

fr 7-36 . w3 .Type " content = " text / html .vioix.equiv =" Content .equiv =" Content ... org /1999/ xhtml " xml : lang = " en " lang =" en " > < head > < title > Bonjour </ title > < meta http . charset = UTF -8 "/ > </ head > < body > < h1 > Bonjour ! </ h1 ></ body > </ html > http://jb. w3 .free. < html xmlns = " http :// www . org /1999/ xhtml " xml : lang = " en " lang =" en " > <head > <title > Bonjour </ title > < meta http .. < html xmlns = " http :// www .Pr´sentation e Premier programme Premier programme Voici un premier programme en PHP : <! DOCTYPE . ?> </ body > </ html > Le code suivant est renvoy´ au navigateur : e <! DOCTYPE .. ch arset = UTF -8 "/> </ head > <body > <? php echo " <h1 > Bonjour ! </ h1 > " .Type " content = " text / html .

. Les commentaires sont plac´s entre les signes /* et */ ou sur une e seule ligne pr´c´d´e de // ou de # e e e PHP est sensible ` la casse (majuscules et minuscules). a Les blocs de code sont d´limit´s par des accolades { et } e e http://jb.vioix.Syntaxe du langage G´n´ralit´s e e e G´n´ralit´s e e e Le code est compris entre les balises < ?php et ?> Les instructions sont s´par´es par un point-virgule .. e e Java. comme en C. .fr 8-36 .free.

e e Java.free. a Les blocs de code sont d´limit´s par des accolades { et } e e http://jb..fr 8-36 .. comme en C.vioix. Les commentaires sont plac´s entre les signes /* et */ ou sur une e seule ligne pr´c´d´e de // ou de # e e e PHP est sensible ` la casse (majuscules et minuscules).Syntaxe du langage G´n´ralit´s e e e G´n´ralit´s e e e Le code est compris entre les balises < ?php et ?> Les instructions sont s´par´es par un point-virgule . .

Syntaxe du langage G´n´ralit´s e e e G´n´ralit´s e e e Le code est compris entre les balises < ?php et ?> Les instructions sont s´par´es par un point-virgule ..fr 8-36 . e e Java. a Les blocs de code sont d´limit´s par des accolades { et } e e http://jb.vioix.free.. comme en C. . Les commentaires sont plac´s entre les signes /* et */ ou sur une e seule ligne pr´c´d´e de // ou de # e e e PHP est sensible ` la casse (majuscules et minuscules).

comme en C.free. Les commentaires sont plac´s entre les signes /* et */ ou sur une e seule ligne pr´c´d´e de // ou de # e e e PHP est sensible ` la casse (majuscules et minuscules). a Les blocs de code sont d´limit´s par des accolades { et } e e http://jb.fr 8-36 ..Syntaxe du langage G´n´ralit´s e e e G´n´ralit´s e e e Le code est compris entre les balises < ?php et ?> Les instructions sont s´par´es par un point-virgule . .. e e Java.vioix.

comme en C. . e e Java. a Les blocs de code sont d´limit´s par des accolades { et } e e http://jb. Les commentaires sont plac´s entre les signes /* et */ ou sur une e seule ligne pr´c´d´e de // ou de # e e e PHP est sensible ` la casse (majuscules et minuscules)..Syntaxe du langage G´n´ralit´s e e e G´n´ralit´s e e e Le code est compris entre les balises < ?php et ?> Les instructions sont s´par´es par un point-virgule .fr 8-36 ..vioix.free.

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

Syntaxe du langage

Les variables

Les variables : pr´sentation e

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

http://jb.vioix.free.fr

9-36

Syntaxe du langage

Les variables

Les variables : pr´sentation e

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

http://jb.vioix.free.fr

9-36

Syntaxe du langage

Les variables

Les variables : pr´sentation e

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

http://jb.vioix.free.fr

9-36

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

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

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

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

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

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

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

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

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

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

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

e La fonction print r permet d’afficher le contenu d’une variable.vioix.estvideo.Syntaxe du langage Les variables Les variables : les chaˆ ınes de caract`res (2) e Chaque caract`re composant la chaˆ peut ˆtre acc´d´ en utilisant le e ıne e e e nom de la chaˆ suivit de l’indice (` partir de 0) entre accolades : ıne a $b=$chaine{3} La longueur d’une chaˆ est renvoy´e par la fonction strlen : ıne e $l = strlen($s) Les chaˆ ınes de caract`res peuvent ˆtre affich´es avec les fonctions e e e echo et print (il existe une petite diff´rence entre les deux)1 .free. d’un objet ou de le copier vers une chaˆ de caract`res.com/dew/index/page/phpbench 12-36 http://jb. ıne e 1 http://www. d’un tableau.fr .

Syntaxe du langage

Les variables

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

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

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

Les chaˆ ınes de caract`res peuvent ˆtre affich´es avec les fonctions 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 tableau, d’un objet ou de le copier vers une chaˆ de caract`res. ıne e

1

http://www.estvideo.com/dew/index/page/phpbench 12-36

http://jb.vioix.free.fr

Syntaxe du langage

Les variables

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

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

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

Les chaˆ ınes de caract`res peuvent ˆtre affich´es avec les fonctions 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 tableau, d’un objet ou de le copier vers une chaˆ de caract`res. ıne e

1

http://www.estvideo.com/dew/index/page/phpbench 12-36

http://jb.vioix.free.fr

Syntaxe du langage

Les variables

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

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

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

Les chaˆ ınes de caract`res peuvent ˆtre affich´es avec les fonctions 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 tableau, d’un objet ou de le copier vers une chaˆ de caract`res. ıne e

1

http://www.estvideo.com/dew/index/page/phpbench 12-36

http://jb.vioix.free.fr

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

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

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

Syntaxe du langage

Les variables

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

http://jb.vioix.free.fr

13-36

Syntaxe du langage

Les variables

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

http://jb.vioix.free.fr

13-36

Syntaxe du langage

Les variables

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

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

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

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

e La commande define permet de d´finir une constante que ce soit un e type num´rique ou une chaˆ de caract`res e ıne e http://jb. Par convention.free. a e Ces constantes sont souvent utilis´es pour stocker des param`tres e e dans un programme.fr 15-36 .Syntaxe du langage Les variables Les variables : les constantes Il est possible d’associer un symbole ` une constante inalt´rable.vioix. les noms de constantes sont en majuscules pour les diff´rencier des variables.

fr 15-36 . a e Ces constantes sont souvent utilis´es pour stocker des param`tres e e dans un programme.Syntaxe du langage Les variables Les variables : les constantes Il est possible d’associer un symbole ` une constante inalt´rable. Par convention. les noms de constantes sont en majuscules pour les diff´rencier des variables. e La commande define permet de d´finir une constante que ce soit un e type num´rique ou une chaˆ de caract`res e ıne e http://jb.vioix.free.

a e Ces constantes sont souvent utilis´es pour stocker des param`tres e e dans un programme. les noms de constantes sont en majuscules pour les diff´rencier des variables. e La commande define permet de d´finir une constante que ce soit un e type num´rique ou une chaˆ de caract`res e ıne e http://jb.free.fr 15-36 .Syntaxe du langage Les variables Les variables : les constantes Il est possible d’associer un symbole ` une constante inalt´rable. Par convention.vioix.

a e Ces constantes sont souvent utilis´es pour stocker des param`tres e e dans un programme.free.vioix. les noms de constantes sont en majuscules pour les diff´rencier des variables. Par convention.fr 15-36 .Syntaxe du langage Les variables Les variables : les constantes Il est possible d’associer un symbole ` une constante inalt´rable. e La commande define permet de d´finir une constante que ce soit un e type num´rique ou une chaˆ de caract`res e ıne e http://jb.

fr 15-36 .14159).Syntaxe du langage Les variables Les variables : les constantes Il est possible d’associer un symbole ` une constante inalt´rable.vioix. 3. e La commande define permet de d´finir une constante que ce soit un e type num´rique ou une chaˆ de caract`res e ıne e define ( " PI " . define ( " SERVEUR " .free. les noms de constantes sont en majuscules pour les diff´rencier des variables. Par convention. " serveur . http://jb. fr " ). a e Ces constantes sont souvent utilis´es pour stocker des param`tres e e dans un programme.

.) renseignent sur le type d’une variable. ‘‘0’’. . ee La fonction unset permet de d´truire une variable. http://jb.Syntaxe du langage Les variables Les variables : fonctions utiles La fonction isset est utilis´e pour tester l’existence d’une variable. .free. e Les fonctions is XXXX (is int. un tableau vide. FALSE.. NULL. e La fonction empty permet de savoir si une variable contient une valeur non nulle (‘‘’’. sont des ´l´ments vides). .vioix. ’’.fr 16-36 .is float.

fr 16-36 .. http://jb. . . NULL.is float.. e La fonction empty permet de savoir si une variable contient une valeur non nulle (‘‘’’. ’’. sont des ´l´ments vides). un tableau vide. .free. ee La fonction unset permet de d´truire une variable.) renseignent sur le type d’une variable.Syntaxe du langage Les variables Les variables : fonctions utiles La fonction isset est utilis´e pour tester l’existence d’une variable.vioix. FALSE. e Les fonctions is XXXX (is int. ‘‘0’’.

ee La fonction unset permet de d´truire une variable. sont des ´l´ments vides).fr 16-36 .vioix.) renseignent sur le type d’une variable. un tableau vide. NULL. . http://jb.. .free..is float.Syntaxe du langage Les variables Les variables : fonctions utiles La fonction isset est utilis´e pour tester l’existence d’une variable. ’’. . FALSE. ‘‘0’’. e La fonction empty permet de savoir si une variable contient une valeur non nulle (‘‘’’. e Les fonctions is XXXX (is int.

‘‘0’’. ..is float.vioix. e Les fonctions is XXXX (is int. ’’.) renseignent sur le type d’une variable.free. http://jb. ee La fonction unset permet de d´truire une variable.fr 16-36 . sont des ´l´ments vides). e La fonction empty permet de savoir si une variable contient une valeur non nulle (‘‘’’.Syntaxe du langage Les variables Les variables : fonctions utiles La fonction isset est utilis´e pour tester l’existence d’une variable. . NULL. un tableau vide.. FALSE. .

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

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

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

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

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

.case Les instructions de tests imbriqu´es peuvent ˆtre ´crites en utilisant e e e une structure switch.Syntaxe du langage Les structures du langage Les structures du langage : les instructions de test switch.case.... e http://jb. ce peut ˆtre des valeurs num´riques ou des chaˆ e e e e ınes de caract`res.free. Cette structure permet de faire des choix parmi des valeurs pr´d´finies.fr 18-36 .vioix.

e http://jb. ce peut ˆtre des valeurs num´riques ou des chaˆ e e e e ınes de caract`res. Cette structure permet de faire des choix parmi des valeurs pr´d´finies..case Les instructions de tests imbriqu´es peuvent ˆtre ´crites en utilisant e e e une structure switch.case.Syntaxe du langage Les structures du langage Les structures du langage : les instructions de test switch.vioix.free.fr 18-36 ....

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

. s’il est vrai.exp3){..Syntaxe du langage Les structures du langage Les structures du langage : les boucles for La boucle la plus simple est la boucle for. A chaque d´but e e e d’it´ration. : e for(exp1 .} Au d´part de la boucle l’expression exp1 est trait´e. Java..fr 19-36 ..exp2 . e e http://jb. le contenu de l’expression exp2 est ´valu´. le e e e contenu des accolades est effectu´ puis l’expression exp3 est trait´e.. Elle a exactement la mˆme syntaxe qu’en C.vioix.free.

e e http://jb. le contenu de l’expression exp2 est ´valu´.vioix. . Elle a exactement la mˆme syntaxe qu’en C. : e for(exp1 .exp2 .. Java.} Au d´part de la boucle l’expression exp1 est trait´e.fr 19-36 . s’il est vrai.Syntaxe du langage Les structures du langage Les structures du langage : les boucles for La boucle la plus simple est la boucle for.. le e e e contenu des accolades est effectu´ puis l’expression exp3 est trait´e...free. A chaque d´but e e e d’it´ration.exp3){.

} . : e for(exp1 . $i ++){ $puissance = pow (2 .Syntaxe du langage Les structures du langage Les structures du langage : les boucles for La boucle la plus simple est la boucle for.. le contenu de l’expression exp2 est ´valu´.exp2 .. echo " 2 puissance $i vaut : $puissance < br /> " .free. Elle a exactement la mˆme syntaxe qu’en C.. http://jb..vioix. A chaque d´but e e e d’it´ration...fr 19-36 ...exp3){. $i ). for ( $i =0 . . s’il est vrai. le e e e contenu des accolades est effectu´ puis l’expression exp3 est trait´e. e e . Java. $i <8.} Au d´part de la boucle l’expression exp1 est trait´e.

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

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

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

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

} http://jb.fr 21-36 .Syntaxe du langage Les structures du langage Les structures du langage : les boucles foreach Si on modifie la variable $value....} ou foreach($tab as $key=>&$value){. les modifications ne se r´percutent e pas sur le tableau..free.vioix. Il faut faire un passage par r´f´rence pour pouvoir modifier le tableau ee en ajoutant & lors de la d´claration : foreach($tab as e &$value){.

fr 21-36 ... les modifications ne se r´percutent e pas sur le tableau.free.Syntaxe du langage Les structures du langage Les structures du langage : les boucles foreach Si on modifie la variable $value.vioix..} http://jb..} ou foreach($tab as $key=>&$value){. Il faut faire un passage par r´f´rence pour pouvoir modifier le tableau ee en ajoutant & lors de la d´claration : foreach($tab as e &$value){.

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

vioix.fr 22-36 .while Pour r´p´ter un bloc d’instruction tant qu’une expression est vraie...free. l’expression est test´e e avant chaque it´ration.Syntaxe du langage Les structures du langage Les structures du langage : les boucles while et do...}while(expression). on e e utilise les boucles while et do..}.. dans la boucle do{.. e l’expression est test´e apr`s chaque it´ration. e e e http://jb..while Dans la boucle while(expression){.

dans la boucle do{.fr 22-36 ....while Pour r´p´ter un bloc d’instruction tant qu’une expression est vraie.vioix.while Dans la boucle while(expression){.... e l’expression est test´e apr`s chaque it´ration.. l’expression est test´e e avant chaque it´ration. e e e http://jb.}.Syntaxe du langage Les structures du langage Les structures du langage : les boucles while et do. on e e utilise les boucles while et do.free.}while(expression)..

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

fr 23-36 . e Pour retourner une valeur. Le type de retour d’une fonction n’est pas sp´cifi´ dans sa d´claration. e e e http://jb.Syntaxe du langage Les fonctions Les fonctions : pr´sentation e Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc e e d’instructions. on utilise le mot-clef return.free.vioix. Il est possible de passer des param`tres et de renvoyer une valeur.

e Pour retourner une valeur. Le type de retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.free. e e e http://jb. Il est possible de passer des param`tres et de renvoyer une valeur.Syntaxe du langage Les fonctions Les fonctions : pr´sentation e Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc e e d’instructions. on utilise le mot-clef return.vioix.fr 23-36 .

e Pour retourner une valeur. Il est possible de passer des param`tres et de renvoyer une valeur.vioix. e e e http://jb.free. Le type de retour d’une fonction n’est pas sp´cifi´ dans sa d´claration. on utilise le mot-clef return.Syntaxe du langage Les fonctions Les fonctions : pr´sentation e Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc e e d’instructions.fr 23-36 .

http://jb.. $b ) { $somme = $a + $b .fr 23-36 . e Pour retourner une valeur. } // . e e e function addition ( $a .vioix... return $somme .free. $v =2. $v ). $u =1. on utilise le mot-clef return. // . Il est possible de passer des param`tres et de renvoyer une valeur. Le type de retour d’une fonction n’est pas sp´cifi´ dans sa d´claration.Syntaxe du langage Les fonctions Les fonctions : pr´sentation e Une fonction est d´clar´e avec le mot-clef function suivit d’un bloc e e d’instructions.. $w = addition ( $u .

elles gardent leurs valeurs hors de la e fonction.free. e Il est possible de pr´d´finir une valeur pour chaque param`tre.fr 24-36 . si elles sont alt´r´es e e ee a ` l’int´rieur de la fonction. elle doit ˆtre pass´e par r´f´rence. Pour pouvoir modifier une variable. on pr´c`de le nom de la variable du signe & e e e dans la d´claration de fonction.vioix. e e ee Lors de la d´claration.Syntaxe du langage Les fonctions Les fonctions : les param`tres e Par d´faut. e e e http://jb. les variables sont pass´es par valeur.

e e ee Lors de la d´claration. elle doit ˆtre pass´e par r´f´rence.fr 24-36 .vioix.free.Syntaxe du langage Les fonctions Les fonctions : les param`tres e Par d´faut. Pour pouvoir modifier une variable. e Il est possible de pr´d´finir une valeur pour chaque param`tre. si elles sont alt´r´es e e ee a ` l’int´rieur de la fonction. on pr´c`de le nom de la variable du signe & e e e dans la d´claration de fonction. elles gardent leurs valeurs hors de la e fonction. les variables sont pass´es par valeur. e e e http://jb.

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

Syntaxe du langage Les fonctions Les fonctions : les param`tres e Par d´faut. les variables sont pass´es par valeur.free. on pr´c`de le nom de la variable du signe & e e e dans la d´claration de fonction. elle doit ˆtre pass´e par r´f´rence. elles gardent leurs valeurs hors de la e fonction. Pour pouvoir modifier une variable. e e ee Lors de la d´claration. si elles sont alt´r´es e e ee a ` l’int´rieur de la fonction.fr 24-36 .vioix. e e e http://jb. e Il est possible de pr´d´finir une valeur pour chaque param`tre.

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

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

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

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

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

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

e Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse.Syntaxe du langage Les fonctions Les fonctions : les variables globales La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des e e e e variables globales. Le mot clef global permet de d´finir une variable globale.free.vioix.fr 26-36 . e e e Elles rendent les scripts peu lisibles et peu s´curis´s. e e http://jb.

fr 26-36 . e Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse.Syntaxe du langage Les fonctions Les fonctions : les variables globales La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des e e e e variables globales. http://jb. e e e Elles rendent les scripts peu lisibles et peu s´curis´s..free. global $user .vioix. Le mot clef global permet de d´finir une variable globale.. .. e e ..

fr 26-36 ...vioix.free. global $user . . http://jb.. e e e Elles rendent les scripts peu lisibles et peu s´curis´s. Le mot clef global permet de d´finir une variable globale. e Les variables globales doivent ˆtre utilis´es de mani`re parcimonieuse. e e ..Syntaxe du langage Les fonctions Les fonctions : les variables globales La visibilit´ r´duite des variables peut ˆtre modifi´e en utilisant des e e e e variables globales.

on s´pare les fonctions en diff´rents fichiers.free. include et include once.vioix. e e Quatre fonctions permettent d’inclure des fichiers : require.Syntaxe du langage Les fonctions Les fonctions : inclusion de scripts Pour organiser un site. Les instructions require et require once conduisent ` l’arrˆt du a 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). Lors d’imbrications multiples le probl`me de la red´claration peut se e e poser. e ea e e http://jb. les fonctions require once et include once e v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure.fr 27-36 . Pour ´viter ceci. require once.

on s´pare les fonctions en diff´rents fichiers. include et include once.Syntaxe du langage Les fonctions Les fonctions : inclusion de scripts Pour organiser un site.free. e ea e e http://jb. e e Quatre fonctions permettent d’inclure des fichiers : require. require once. Lors d’imbrications multiples le probl`me de la red´claration peut se e e poser.vioix. les fonctions require once et include once e v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure. Pour ´viter ceci. Les instructions require et require once conduisent ` l’arrˆt du a 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).fr 27-36 .

free. on s´pare les fonctions en diff´rents fichiers.fr 27-36 . e e Quatre fonctions permettent d’inclure des fichiers : require.Syntaxe du langage Les fonctions Les fonctions : inclusion de scripts Pour organiser un site. Lors d’imbrications multiples le probl`me de la red´claration peut se e e poser. require once. les fonctions require once et include once e v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure. Les instructions require et require once conduisent ` l’arrˆt du a 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).vioix. include et include once. Pour ´viter ceci. e ea e e http://jb.

Syntaxe du langage Les fonctions Les fonctions : inclusion de scripts Pour organiser un site.free. e ea e e http://jb. on s´pare les fonctions en diff´rents fichiers. e e Quatre fonctions permettent d’inclure des fichiers : require. Les instructions require et require once conduisent ` l’arrˆt du a 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). include et include once.fr 27-36 . require once. Pour ´viter ceci. les fonctions require once et include once e v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure. Lors d’imbrications multiples le probl`me de la red´claration peut se e e poser.vioix.

vioix. .... http://jb. require once.. les fonctions require once et include once e v´rifient que le fichier n’a pas d´j` ´t´ inclus avant de l’inclure. Pour ´viter ceci. Les instructions require et require once conduisent ` l’arrˆt du a 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). on s´pare les fonctions en diff´rents fichiers.Syntaxe du langage Les fonctions Les fonctions : inclusion de scripts Pour organiser un site. e e Quatre fonctions permettent d’inclure des fichiers : require. include ( " Menu . e ea e e . include et include once.fr 27-36 . php " ).free. Lors d’imbrications multiples le probl`me de la red´claration peut se e e poser.

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

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

.. e . e e Il existe un tableau $ FILES qui contient les fichiers t´l´charg´s via la ee e m´thode POST du client vers le serveur.vioix.Interaction avec le client Les formulaires Les formulaires Les tableaux super-globaux $ GET et $ POST sont des tableaux associatifs contenant les variables d´finies dans les formulaires..fr 28-36 .free. e Chaque tableau est associ´ ` la m´thode d’envoi du mˆme nom. http://jb.. 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 > . < form action =" result . ea e e Pour les ´l´ments homog`nes ` des tableaux le nom doit se terminer ee e a par [] pour ˆtre transform´ en tableau.

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

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

vioix.Interaction avec le client Les outils de support de sessions web Pr´sentation g´n´rale e e e Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page. e Les sessions support´es par le serveur. e e Il est n´cessaire de pouvoir passer des informations d’une page ` e a l’autre.free. Deux m´canismes sont possibles en PHP : e Les cookies stock´s sur le poste client. e http://jb.fr 29-36 .

Interaction avec le client Les outils de support de sessions web Pr´sentation g´n´rale e e e Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page. e Les sessions support´es par le serveur. e http://jb. e e Il est n´cessaire de pouvoir passer des informations d’une page ` e a l’autre.vioix.fr 29-36 . Deux m´canismes sont possibles en PHP : e Les cookies stock´s sur le poste client.free.

e Les sessions support´es par le serveur.Interaction avec le client Les outils de support de sessions web Pr´sentation g´n´rale e e e Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page. e e Il est n´cessaire de pouvoir passer des informations d’une page ` e a l’autre.vioix. Deux m´canismes sont possibles en PHP : e Les cookies stock´s sur le poste client. e http://jb.free.fr 29-36 .

fr 29-36 . e e Il est n´cessaire de pouvoir passer des informations d’une page ` e a l’autre.Interaction avec le client Les outils de support de sessions web Pr´sentation g´n´rale e e e Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page. e http://jb.vioix.free. e Les sessions support´es par le serveur. Deux m´canismes sont possibles en PHP : e Les cookies stock´s sur le poste client.

fr 29-36 . Deux m´canismes sont possibles en PHP : e Les cookies stock´s sur le poste client.Interaction avec le client Les outils de support de sessions web Pr´sentation g´n´rale e e e Le protocole HTTP impose une d´connexion apr`s l’envoi d’une page. e http://jb. e e Il est n´cessaire de pouvoir passer des informations d’une page ` e a l’autre. e Les sessions support´es par le serveur.free.vioix.

Un cookie a normalement une date de validit´ qui assure sa e suppression par le navigateur.fr 30-36 . Les cookies sont souvent utilis´s pour garder les pr´f´rences de e ee l’utilisateur entre deux visites du site.free. http://jb.Interaction avec le client Les cookies Les cookies : pr´sentation e 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.vioix. Les cookies sont envoy´s par le serveur dans les entˆtes HTTP ` e e a l’aide de la directive Set-Cookie.

vioix.fr 30-36 . Un cookie a normalement une date de validit´ qui assure sa e suppression par le navigateur. http://jb. Les cookies sont souvent utilis´s pour garder les pr´f´rences de e ee l’utilisateur entre deux visites du site.Interaction avec le client Les cookies Les cookies : pr´sentation e 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.free. Les cookies sont envoy´s par le serveur dans les entˆtes HTTP ` e e a l’aide de la directive Set-Cookie.

Les cookies sont envoy´s par le serveur dans les entˆtes HTTP ` e e a l’aide de la directive Set-Cookie.free. Les cookies sont souvent utilis´s pour garder les pr´f´rences de e ee l’utilisateur entre deux visites du site.Interaction avec le client Les cookies Les cookies : pr´sentation e 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. Un cookie a normalement une date de validit´ qui assure sa e suppression par le navigateur. http://jb.fr 30-36 .vioix.

free. http://jb. Les cookies sont souvent utilis´s pour garder les pr´f´rences de e ee l’utilisateur entre deux visites du site. Les cookies sont envoy´s par le serveur dans les entˆtes HTTP ` e e a l’aide de la directive Set-Cookie. Un cookie a normalement une date de validit´ qui assure sa e suppression par le navigateur.fr 30-36 .vioix.Interaction avec le client Les cookies Les cookies : pr´sentation e 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 Cette fonction a 6 param`tres tous optionnels sauf le premier : e $name : le nom du cookie. elle doit ˆtre e e appel´e avant les entˆtes HTTP. $value : la valeur du cookie. $domain : le nom de domaine de validit´ du site. e a http://jb.fr 31-36 . e $secure : permet de crypter l’envoi cookie ` l’aide du protocole a HTTPS si ´gale ` 1.free.Interaction avec le client Les cookies Les cookies : utilisation avec PHP La fonction setcookie permet de cr´er un cookie.vioix. $path : le domaine de validit´ du cookie (r´pertoire ou sous r´pertoire e e e possible). $expires : la date d’expiration du cookie au format timestamp Unix.

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

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

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

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

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

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

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

free. e e http://jb. Pour supprimer un cookie il suffit de le renvoyer avec une date d´pass´e.fr 32-36 .vioix. PHP construit un tableau super e e a global $ COOKIE qui contient tous les cookies associ´s ` la page en cours.Interaction avec le client Les cookies Les cookies : utilisation avec PHP La lecture des cookies est tr`s facile.

echo $_COOKIE [" themes " ].vioix. // affiche " rouge " http://jb..fr 32-36 . PHP construit un tableau super e global $ COOKIE qui contient tous les cookies associ´s ` la page en e a cours..Interaction avec le client Les cookies Les cookies : utilisation avec PHP La lecture des cookies est tr`s facile. . Pour supprimer un cookie il suffit de le renvoyer avec une date d´pass´e. e e .free...

Pour supprimer un cookie il suffit de le renvoyer avec une date d´pass´e.vioix.fr 32-36 .Interaction avec le client Les cookies Les cookies : utilisation avec PHP La lecture des cookies est tr`s facile. e e http://jb. PHP construit un tableau super e e a global $ COOKIE qui contient tous les cookies associ´s ` la page en cours.free.

http://jb..fr 32-36 .vioix. setcookie (" themes " . PHP construit un tableau super e 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 d´pass´e... e e .Interaction avec le client Les cookies Les cookies : utilisation avec PHP La lecture des cookies est tr`s facile.free. " rouge " .. time () -200). // cookie valable 30 jours .

free.fr 33-36 . des informations ”sensibles” e ne doivent donc pas ˆtre stock´es ` l’aide de cookies. Les informations sont stock´es en clair. les cookies peuvent ˆtre copi´s d’un poste ` un autre ce e e e a qui peut conduire ` des usurpations d’identit´s.vioix. a e L’utilisateur peut configurer son navigateur pour refuser les cookies. http://jb. e e a De mˆme.Interaction avec le client Les cookies Les cookies : avantages et limitations Les cookies sont faciles d’emploi pour stocker rapidement des informations.

Interaction avec le client Les cookies Les cookies : avantages et limitations Les cookies sont faciles d’emploi pour stocker rapidement des informations.fr 33-36 . Les informations sont stock´es en clair.free. les cookies peuvent ˆtre copi´s d’un poste ` un autre ce e e e a qui peut conduire ` des usurpations d’identit´s.vioix. des informations ”sensibles” e ne doivent donc pas ˆtre stock´es ` l’aide de cookies. a e L’utilisateur peut configurer son navigateur pour refuser les cookies. http://jb. e e a De mˆme.

des informations ”sensibles” e ne doivent donc pas ˆtre stock´es ` l’aide de cookies. http://jb.Interaction avec le client Les cookies Les cookies : avantages et limitations Les cookies sont faciles d’emploi pour stocker rapidement des informations. les cookies peuvent ˆtre copi´s d’un poste ` un autre ce e e e a qui peut conduire ` des usurpations d’identit´s. Les informations sont stock´es en clair.vioix. e e a De mˆme.fr 33-36 .free. a e L’utilisateur peut configurer son navigateur pour refuser les cookies.

a e L’utilisateur peut configurer son navigateur pour refuser les cookies. e e a De mˆme.vioix. des informations ”sensibles” e ne doivent donc pas ˆtre stock´es ` l’aide de cookies.fr 33-36 . les cookies peuvent ˆtre copi´s d’un poste ` un autre ce e e e a qui peut conduire ` des usurpations d’identit´s.free.Interaction avec le client Les cookies Les cookies : avantages et limitations Les cookies sont faciles d’emploi pour stocker rapidement des informations. Les informations sont stock´es en clair. http://jb.

variable PHPSESSID).vioix.free. e http://jb.Interaction avec le client Les sessions Les sessions : g´n´ralit´s e e e Les sessions sont un m´canisme plus sˆr de stockage des informations.fr 34-36 . l’identifiant est pass´ comme param`tre dans l’adresse e e (m´thode GET. e u 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 e accepte. Sinon.

fr 34-36 . variable PHPSESSID). e u 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 e accepte. e http://jb. Sinon.vioix.free. l’identifiant est pass´ comme param`tre dans l’adresse e e (m´thode GET.Interaction avec le client Les sessions Les sessions : g´n´ralit´s e e e Les sessions sont un m´canisme plus sˆr de stockage des informations.

e u 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 e accepte.Interaction avec le client Les sessions Les sessions : g´n´ralit´s e e e Les sessions sont un m´canisme plus sˆr de stockage des informations.fr 34-36 . l’identifiant est pass´ comme param`tre dans l’adresse e e (m´thode GET. variable PHPSESSID).free. e http://jb. Sinon.vioix.

free. variable PHPSESSID). e u 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 e accepte. l’identifiant est pass´ comme param`tre dans l’adresse e e (m´thode GET.vioix.Interaction avec le client Les sessions Les sessions : g´n´ralit´s e e e Les sessions sont un m´canisme plus sˆr de stockage des informations. e http://jb. Sinon.fr 34-36 .

lifetime dans le fichier de configuration de PHP.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.free. Une session peut ˆtre d´truite en utilisant la m´thode e e e session destroy() http://jb. e e Les variables sont ensuite accessibles via un tableau super global $ SESSION accessible dans chaque fichier. Pour commencer une session on appelle la fonction e u session start() avant les entˆtes HTTP dans chaque page o` l’on doit acc´der aux valeurs stock´es.vioix.

vioix. Pour commencer une session on appelle la fonction e u session start() avant les entˆtes HTTP dans chaque page o` l’on doit acc´der aux valeurs stock´es. Une session peut ˆtre d´truite en utilisant la m´thode e e e session destroy() http://jb.lifetime dans le fichier de configuration de PHP.fr 35-36 . e e Les variables sont ensuite accessibles via un tableau super global $ SESSION accessible dans chaque fichier.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.free.

e e Les variables sont ensuite accessibles via un tableau super global $ SESSION accessible dans chaque fichier.fr 35-36 .vioix.lifetime dans le fichier de configuration de PHP.free. Une session peut ˆtre d´truite en utilisant la m´thode e e e session destroy() http://jb.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. Pour commencer une session on appelle la fonction e u session start() avant les entˆtes HTTP dans chaque page o` l’on doit acc´der aux valeurs stock´es.

vioix. Pour commencer une session on appelle la fonction e u session start() avant les entˆtes HTTP dans chaque page o` l’on doit acc´der aux valeurs stock´es. e e Les variables sont ensuite accessibles via un tableau super global $ SESSION accessible dans chaque fichier.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. Une session peut ˆtre d´truite en utilisant la m´thode e e e session destroy() http://jb.free.

.. css " type =" text / css " rel =" stylesheet " media =" screen "/ > ’.. css " type =" text / css " rel =" stylesheet " media =" screen "/ > ’. ?> <head > ....fr 36-36 . if ( $_SESSION [ " themes "] = " " ){ $_SESSION [" themes " ] = " red ". } .. http://jb.. <? php if ( $_SESSION [ " themes "] === " red " ){ echo ’< link href =" ThemeRouge .. }. ?> </ head > . } elseif ( $_SESSION [ " themes " ] === " blue " ){ echo ’< link href =" ThemeBleu ..vioix.Interaction avec le client Les sessions Les sessions : exemple R´alisation d’un style switcher ` partir de sessions : e a <? php session_start ().free..

Sign up to vote on this title
UsefulNot useful