SlideShare une entreprise Scribd logo

Initiation php v2015

ce document présente une initiation au langage PHP pour les débutants

1  sur  105
Télécharger pour lire hors ligne
Initiation au langage
PHP Hypertext
Preprocessor
Pr. Benabbou Faouzia
Laboratoire de Technologie d’Information et Modélisation
Université Hassan II Mohammedia-Casablanca
Faculté des sciences ben M'sik
Septembre 2015
Plan
2
 Introduction
 Définition de PHP
 Les variables
 Les constantes
 Les tableaux
 Les opérateurs
 Les structures de contrôle PHP
 Les fonctions
 Gestion des fichier
Langages du Web
3
 Code qui s’exécute côté client
HTML HyperText Markup Language
JAVASCRIPT
APPLET JAVA
 Code qui s’exécute côté serveur
 PHP
 ASP
 CGI,…
 Code qui s’exécute côté client ou serveur
PHP
4
 PHP est un langage de programmation
spécialisé dans la génération de code, dont le
langage cible est le HTML.
 Le PHP permet de réaliser des sites Internet
dynamique.
 PHP est un disponible dans plusieurs
environnements, tels que le système Unix ,
Windows, ...
 Il possède une impressionnante quantité
d'outils (manipulation d'images, traitement de
fichiers, accès aux bases de données, etc…)
Définition de PHP
5
 Le PHP(officiellement "PHP: Hypertext
Preprocessor") est un langage complet, écrit
en C, qui reprend une grande partie des
spécificités techniques et sémantiques de ce
langage.
 Le moteur d'interprétation du langage lit un
fichier source PHP, puis génère un flux
destination.
Langages PHP :Fonctionnement
6
 Le code PHP est enregistré dans un fichier sur le
serveur
 A la demande, le serveur interprète le code PHP
du fichier.
 La page modifiée est envoyée au client
 L’utilisateur ne voit pas le PHP
 Lorsqu'une erreur survient, un message est
intégré dans le flux de sortie, et la génération du
script est interrompue.
 Le serveur détecte les fichiers PHP par leur
extension. Extensions courantes: php, php3, php4
Publicité

Recommandé

Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academySoufiane SAHMI
 
PHP - get started
PHP - get startedPHP - get started
PHP - get startedmazenovi
 
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINEIntroduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINEMarouan OMEZZINE
 
Réalisation d'un compilateur de mini langage - Khawarizmi
Réalisation d'un compilateur  de mini langage - KhawarizmiRéalisation d'un compilateur  de mini langage - Khawarizmi
Réalisation d'un compilateur de mini langage - KhawarizmiBachir Benyammi
 

Contenu connexe

Tendances

PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introductionJean Michel
 
VIM puissance PHP = VI Improved !
VIM puissance PHP = VI Improved !VIM puissance PHP = VI Improved !
VIM puissance PHP = VI Improved !Frederic Hardy
 
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - KhawarizmiRéalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - KhawarizmiBachir Benyammi
 
PHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésPHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésDidcode
 
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINEIntroduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINEMarouan OMEZZINE
 
Introduction a la compilation Aperçu de la compilation / Assembleur MIPS - C1
Introduction a la compilation  Aperçu de la compilation / Assembleur MIPS - C1Introduction a la compilation  Aperçu de la compilation / Assembleur MIPS - C1
Introduction a la compilation Aperçu de la compilation / Assembleur MIPS - C1Beligh HAMDI
 
PHP 1 - Apprendre les bases
PHP 1 - Apprendre les basesPHP 1 - Apprendre les bases
PHP 1 - Apprendre les basesPierre Faure
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPjulien pauli
 

Tendances (20)

PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introduction
 
VIM puissance PHP = VI Improved !
VIM puissance PHP = VI Improved !VIM puissance PHP = VI Improved !
VIM puissance PHP = VI Improved !
 
Generalites
GeneralitesGeneralites
Generalites
 
Le langage C
Le langage CLe langage C
Le langage C
 
Le langage C
Le langage CLe langage C
Le langage C
 
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - KhawarizmiRéalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
 
PHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésPHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautés
 
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINEIntroduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
 
Introduction a la compilation Aperçu de la compilation / Assembleur MIPS - C1
Introduction a la compilation  Aperçu de la compilation / Assembleur MIPS - C1Introduction a la compilation  Aperçu de la compilation / Assembleur MIPS - C1
Introduction a la compilation Aperçu de la compilation / Assembleur MIPS - C1
 
PHP 1 - Apprendre les bases
PHP 1 - Apprendre les basesPHP 1 - Apprendre les bases
PHP 1 - Apprendre les bases
 
Cours de c
Cours de cCours de c
Cours de c
 
Cours langage-c
Cours langage-cCours langage-c
Cours langage-c
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Formation php 1
Formation php 1Formation php 1
Formation php 1
 
Forma php
Forma phpForma php
Forma php
 
Cours java script
Cours java scriptCours java script
Cours java script
 
Chap1: Cours en C++
Chap1: Cours en C++Chap1: Cours en C++
Chap1: Cours en C++
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
 
Langage C
Langage CLangage C
Langage C
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 

Similaire à Initiation php v2015

Similaire à Initiation php v2015 (20)

PHP mysql Xml.doc
PHP mysql Xml.docPHP mysql Xml.doc
PHP mysql Xml.doc
 
Php_Mysql.pdf
Php_Mysql.pdfPhp_Mysql.pdf
Php_Mysql.pdf
 
Cours php -partie 1.pdf
Cours php -partie 1.pdfCours php -partie 1.pdf
Cours php -partie 1.pdf
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.ppt
 
PHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben AlayaPHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben Alaya
 
Formation php 1
Formation php 1Formation php 1
Formation php 1
 
cours-gratuit.com--CoursPhp-id1055.ppt
cours-gratuit.com--CoursPhp-id1055.pptcours-gratuit.com--CoursPhp-id1055.ppt
cours-gratuit.com--CoursPhp-id1055.ppt
 
Developpement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdfDeveloppement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdf
 
Php
PhpPhp
Php
 
Développement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdfDéveloppement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdf
 
Nouveautés php 7
Nouveautés php 7Nouveautés php 7
Nouveautés php 7
 
La première partie de la présentation PHP
La première partie de la présentation PHPLa première partie de la présentation PHP
La première partie de la présentation PHP
 
hassclic270.ppt
hassclic270.ppthassclic270.ppt
hassclic270.ppt
 
Les principes de base de PHP
 Les principes de base de PHP  Les principes de base de PHP
Les principes de base de PHP
 
Php cours
Php coursPhp cours
Php cours
 
Php4 Mysql
Php4 MysqlPhp4 Mysql
Php4 Mysql
 
Migration PHP4-PHP5
Migration PHP4-PHP5Migration PHP4-PHP5
Migration PHP4-PHP5
 
PHP.pptx
PHP.pptxPHP.pptx
PHP.pptx
 
43_pps.pdf
43_pps.pdf43_pps.pdf
43_pps.pdf
 

Dernier

Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Paulo Marques
 
Fabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqFabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqTxaruka
 
Modulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBModulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBUsaPlay2
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024frizzole
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfLallaJamilaFtaich1
 
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhh
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhhSKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhh
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhhlkherbanacera3
 
Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Paulo Marques
 
Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Gabriel Gay-Para
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneayoubrhammadi2
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueSKennel
 
Marseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfMarseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfNadineHG
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxMissionLocale
 

Dernier (12)

Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024Français langue étrangère: Le but et l'obligation 2024
Français langue étrangère: Le but et l'obligation 2024
 
Fabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie DarrieussecqFabriquer une femme.Livre écrit par Marie Darrieussecq
Fabriquer une femme.Livre écrit par Marie Darrieussecq
 
Modulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHBModulation Fm Tp presentation avancée USTHB
Modulation Fm Tp presentation avancée USTHB
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdf
 
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhh
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhhSKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhh
SKY GARDEN HOUSE gvvhvvvgbgghhhhhhhhhhhhhh
 
Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024Français langue étrangère: L'impératif présent 2024
Français langue étrangère: L'impératif présent 2024
 
Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)Le langage n'est-il qu'un instrument de communication ? (V2)
Le langage n'est-il qu'un instrument de communication ? (V2)
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderne
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numérique
 
Marseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdfMarseille XIXe fiche de travail 2024.pdf
Marseille XIXe fiche de travail 2024.pdf
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptx
 

Initiation php v2015

  • 1. Initiation au langage PHP Hypertext Preprocessor Pr. Benabbou Faouzia Laboratoire de Technologie d’Information et Modélisation Université Hassan II Mohammedia-Casablanca Faculté des sciences ben M'sik Septembre 2015
  • 2. Plan 2  Introduction  Définition de PHP  Les variables  Les constantes  Les tableaux  Les opérateurs  Les structures de contrôle PHP  Les fonctions  Gestion des fichier
  • 3. Langages du Web 3  Code qui s’exécute côté client HTML HyperText Markup Language JAVASCRIPT APPLET JAVA  Code qui s’exécute côté serveur  PHP  ASP  CGI,…  Code qui s’exécute côté client ou serveur
  • 4. PHP 4  PHP est un langage de programmation spécialisé dans la génération de code, dont le langage cible est le HTML.  Le PHP permet de réaliser des sites Internet dynamique.  PHP est un disponible dans plusieurs environnements, tels que le système Unix , Windows, ...  Il possède une impressionnante quantité d'outils (manipulation d'images, traitement de fichiers, accès aux bases de données, etc…)
  • 5. Définition de PHP 5  Le PHP(officiellement "PHP: Hypertext Preprocessor") est un langage complet, écrit en C, qui reprend une grande partie des spécificités techniques et sémantiques de ce langage.  Le moteur d'interprétation du langage lit un fichier source PHP, puis génère un flux destination.
  • 6. Langages PHP :Fonctionnement 6  Le code PHP est enregistré dans un fichier sur le serveur  A la demande, le serveur interprète le code PHP du fichier.  La page modifiée est envoyée au client  L’utilisateur ne voit pas le PHP  Lorsqu'une erreur survient, un message est intégré dans le flux de sortie, et la génération du script est interrompue.  Le serveur détecte les fichiers PHP par leur extension. Extensions courantes: php, php3, php4
  • 7. Schéma de fonctionnement général d'un langage de script 7
  • 8. PHP: Règles d’interprétation 8  Un bloc PHP est un groupe continu de lignes, encadré par deux balises : <? et ?> ou <?php et php?>  Toute ligne située à l'extérieur de ces balises n'est pas interprétée et est envoyée telle quelle dans le flux de sortie.  Toute ligne située à l'intérieur de ces balises est considérée comme une instruction PHP et est donc interprétée par le moteur.
  • 9. Premier programme 9  La conception du script PHP est réalisé avec un éditeur quelconque, ce qui facilite les choses. <HTML> <HEAD><TITLE>Mon premier programme </TITLE></HEAD> <BODY> <? echo " Exemple PHP!"; ?> </BODY> </HTML>  L'extension de votre fichier doit être .php afin d ’être interprété par le serveur
  • 10. Commentaires & E/S  Commentaires  Les E/S
  • 11. Commentaires  Le PHP supporte les commentaires comme en C, C++ et Shell Unix.  Par exemple: <?php echo "Ceci est un test"; // Ceci est un commentaire comme en C++ /* Ceci est un commentaire sur plusieurs lignes, comme en C et C++ */ echo "Ceci est encore un test"; echo "Enfin, le test final"; # Ceci est un commentaire idem en Shell Unix ?>
  • 12. Les E/S  le PHP possède les fonctions qui permettent d’afficher ou de saisir des variables de différents types.  Print: int print ( string arg )  print affiche la chaîne de caractères arg .  retourne toujours 1  On n’est pas obligé d'utiliser des parenthèses.  Identique à echo  Exemples: <?php print("Bonjour le monde"); print "Ce print() se répartit sur plusieurs lignes. Il affiche aussi les nouvelles lignes"; print "L'échappement de caractères se fait : "comme ceci". "?>
  • 13. Les E/S: Print  Utilisation avec des variables $foo = "foobar"; $bar = "barbar"; print "foo vaut $foo"; // s’affiche: foo vaut foobar//  Les guillemets simples annulent le remplacement des variables print 'foo vaut $foo'; // foo vaut $fooprint
  • 14. Les variables 14  Chaque variable est précédée par '$'  Contrairement à beaucoup de langages, PHP ne contient de partie déclarative clairement définie.  Pour déclarer une variable, il suffit de l'initialiser.  Celle-ci sera immédiatement accessible, et le restera jusqu'à la fin du script.  Le type d'une variable est également défini par la valeur qui lui à été affecté lors de sa création.  Les variables en PHP sont toutes dotés du préfixe $ exemple : $data = 1;
  • 15. Portée des variables 15  Selon l'endroit du code où les variables sont définies, ces dernières auront une portée plus ou moins grande  c-à-d qu'elles seront définies soit pour une partie du code (fonction) soit pour sa totalité.
  • 16. Portée des variables 16  Il existe 3 niveaux de définition de variables :  Le niveau global : Il définit des variables dans l'intégralité du code d'une page PHP.  Le niveau local : Il définit des variables propres à une fonction, dont la durée de vie ne dépasse pas le temps de cette fonction.  Le niveau static : Il définit des variables propres à une fonction, qui persistent pendant l'intégralité du code de la page PHP.
  • 17. Type de variable  PHP supporte les huit types basiques suivants :  PHP supporte quatre types scalaires :  Booléen  entier  nombre à virgule flottante  chaîne de caractères  PHP supporte deux types composés :  tableau  objet  PHP supporte deux types spéciaux :  ressource : Une ressource est une variable spéciale, contenant une référence vers une ressource externe. Les ressources sont créées et utilisées par des fonctions spéciales.  NULL  On utilise également quelques pseudo−types pour des raisons de lisibilités :  Mixed : mixed indique qu'un paramètre peut accepter plusieurs (mais pas nécessairement tous) types.  Number: indique qu'un paramètre peut être soit un nombre entier, soit un nombre décimal
  • 18. Dépassement de capacité des entiers  Si un nombre est hors de l'intervalle de validité des entiers, il sera interprété comme un float .  De même, si vous effectuez une opération qui retourne un nombre hors de l'intervalle de validité des entiers, un float sera retourné.  Exemple: <?php $large_number = 2147483647; echo " $large_number " ; $large_number = 50000 * $million; echo " $large_number " ; ?>
  • 19. Conversion des nombres  Pour explicitement convertir une valeur en entier on peut utiliser les opérateurs de transtypage (int) ou (integer) .  Cependant, dans la plupart des situations, ce n'est pas nécesaire, car une valeur sera automatiquement convertie si un opérateur, une fonction ou tout autre élément du langage requiert un entier . <?php $foo = 10; // $foo est un entier $bar = (double) $foo; // $bar est un double $bar=10; $foo = (float) $bar; $bar=10.5; $foo = ( int ) $bar; ?>
  • 20. Opérations sur les nombres + $a+$b Somme - $a-$b Soustraction * $a*$b Multiplication / $a/$b Division en entière % $a%$b Modulo, reste de la division ++ $a++ Incrémente de 1 et l’affecte à $a +=n $a+=n Incrémente de n et l’affecte à $ -- $a-- Décrémente de 1 et l’affecte à $ -=n $a-=n Décrémente de n et l’affecte à $ *=n $a*=n $a= $a*n /=n $a/=n $a= $a/n On retrouve les mêmes opérations classiques en C.
  • 21. Exemple <?php $a = ($b = 4) + 5; // $a est maintenant égal à 9, et $b vaut 4. $a = 3; $a += 5; // correspond à l’instruction ’$a = $a + 5’ ?>
  • 22. Division Entière  Il n'existe pas de division entière en PHP.  1/2 générera le float 0.5 .  On peut forcer la valeur au format entier pour faire l'arrondi. <?php $a=25/7; // 3.5714285714286 $b=(int) (25/7); // 3 echo " $a : $b"; ?>
  • 23. Les nombres à virgule flottante  Les nombres décimaux (connus aussi sous le vocable de " double ", " float " ou " nombre rééls ")  peuvent être spécifiés en utilisant la syntaxe dans l’exemple suivante : <?php $a = 1.234; $b = 1.2e3; $c = 7E−10; ?>
  • 24. Les chaînes de caractères  Les chaînes de caractères sont des séquences de caractères.  Une chaîne peut être spécifiée de trois manières différentes :  guillemets simples  guillemets doubles
  • 25. Guillemets simples <?php echo 'Ceci est une chaîne simple'; echo 'Arnold a coutume de dire : "I'll be back"'; // affiche tel que : "I'll be back" echo 'Etes−vous sûr de vouloir effacer le dossier C:*.*?'; // affiche : tel que echo 'Les variables ne seront pas $afficher $ici';
  • 26. Guillemets doubles  $ch=" bonjour ";  Conséquence:  Pour spécifier un guillemet simple littéral, vous devez l'échapper avec un anti−slash ( ),  Si un anti−slash doit apparaître dans votre chaîne ou bien en fin de chaîne, il faudra le doubler.  Exemple: $str="salut les "amis,"n ca va aujourd’hui ? " ; echo "$str";
  • 27. Traitement des variables dans les chaînes  Les chaînes peuvent être concaténées avec l’opérateur ’.’ (point). Notez que l’opérateur ’+’ (addition) ne fonctionnera pas.  Exemple 1: <?php $boisson = 'limonade'; echo "Du $boisson, du pain et du fromage!"; // Correct echo 'Il a goûté plusieurs ' . $boissons; // correct echo "Il a goûté plusieurs $boissons"; // Correct ?>
  • 28. Intégration du php dans une page hrml <html> <body> <font size="2" face="Arial">Le texte en HTML</font> <?php $chaine ="bonjour en php "; print("<font size="2" face="Arial"> et celui en PHP.</font>"); ?> <br><font size="2" face="Arial"> <?php echo $chaine ; ?>.</font> </body> </html>
  • 29. Les structures de contrôle PHP  Les opérateurs de comparaisons  Les opérateurs logiques  if/else/elseif  while / do...while  for  switch
  • 30. Opérateurs de Comparaison  Ils permettent de comparer les valeurs de deux variables. exemple : Ici $a et $b sont du même type de variable. Opérateur Exemple Résultat == $a == $b vrai si $a est égal à $b != $a != $b vrai si $a est différent de $b < $a < $b vrai si $a est inférieur $b > $a > $b vrai si $a est supérieur $b <= $a <= $b vrai si $a est inférieur ou égal à $b >= $a >= $b vrai si $a est supérieur ou égal à $b 30
  • 31. Opérateurs Logiques  Ils permettent de combiner plusieurs tests entre eux. exemple: Ici $a et $b peuvent prendre les valeurs booléennes vrai ou faux. Exemple opérateur Résultat and ( && ) $a and $b vrai si $a et $b sont vrai $a && $b tous les deux or ( || ) $a or $b vrai si $a est vrai ou $b $a || $b est vrai, ou encore si $a et $b sont vrai tous les deux not ( ! ) not $a vrai si $a est faux !$a 31
  • 32. Les structures de contrôle PHP 32  Ces instructions sont à la base de tout langage de programmation  Elles permettent d'effectuer des tests et des boucles indispensables au traitement des données  Instruction de condition  Instruction de répétition  Instruction de choix,…
  • 33. if / else / elseif 33  Permet d'effectuer un traitement si une condition est remplie.  Exemple : if ($val==1) { echo "1"; }
  • 34. if / else / elseif 34  On peut aussi effectuer un traitement si la condition n'est pas remplie. Ex : if ($val==1) { echo "instruction 1"; } else { echo "instruction 0"; }
  • 35. if / else / elseif 35  Mais si la condition n'a pas que deux cas possibles, on peut ajouter un autre test. if ($val==1) { echo "instruction 1"; } elseif ($valeur==2) { echo "2"; } else { echo "instruction 0"; }
  • 36. Syntaxe alternative  Le PHP propose une autre manière de rassembler des instructions à l’intérieur d’un bloc, pour les fonctions de contrôle if, while, for, et switch.  Dans chaque cas, le principe est de remplacer l’accolade d’ouverture par deux points (:) et l’accolade de fermeture par, respectivement, endif;, endwhile;, endfor;, ou endswitch;. <?php if ($a == 5): Echo “A vaut 5”; endif; ?>
  • 37. Syntaxe alternative <?php if ($a == 5): print "a égale 5"; print "..."; elseif ($a == 6): print "a égale 6"; print "!!!"; else: print "a ne vaut ni 5 ni 6"; endif; ?>
  • 38. Exercice :  Écrire un programme qui permet de dire si un nombre est pair ou impair <?php $N=6; If($N%2==0) print "$N est pair"; else print "$N est impair"; ?>
  • 39. Exercice :  Ecrire un script :  qui permet d’afficher la chaîne « la couleur préféré est rouge » ou chaîne « la couleur préférée est bleue » selon que la variable $nom soit égale à « fille » ou à « garçon » et que $age soit inférieur ou supérieur à 12  Afficher la chaîne dans la couleur considérée ( bleu ou rouge).
  • 40. Corrigé <?php $nom="fille"; $age= 10; If($nom=="fille" && $age< 12) print " la couleur préféré est les rouge"; Elseif ($nom=="garcon" && $age< 12) print " la couleur préféré est le bleu"; ?>
  • 41. Corrigé <html> … <?php $nom="fille"; $age= 10; If($nom=="fille" && $age< 12) print " <font color="red"> la couleur préféré est les rouge</font>"; Elseif ($nom=="garcon" && $age< 12) print " <font color="blue"> la couleur préféré est le bleu"; ?>
  • 42. while / do...while 42  Effectue un traitement tant qu'une condition n'est pas remplie. while (condition) (Instructions) do (instructions) while (condition)  Dans do...while, le traitement est toujours effectué une fois même si la condition n’est pas remplie.
  • 43. Exemple 43 Afficher les nombres inferieurs stricts à 10. <?php $valeur=0; while ($valeur<10) { echo $valeur; $valeur++; } $valeur=0; do { echo $valeur; $valeur++; } while ($valeur<10); ?>
  • 44. for 44  Tout comme l'instruction while, for effectue un traitement tant qu'une condition n'est pas remplie.  Mais elle intègre le paramétrage de la boucle  C'est-à-dire que l'instruction permet de définir l'initialisation des variables, la condition de fin de boucle et le traitement effectué à chaque itération.
  • 45. for 45 Exemple : Afficher les nombres inferieurs stricts à 10. for ($indice=0;$indice<10;$indice++) { echo $indice; }
  • 46. Exercices  Ecrire un programme qui permet de calculer le factoriel d’un nombre  Lister tous les nombre premiers inférieurs à un nombre N
  • 47. switch 47  Cette instruction remplace une suite de tests if  Permet de comparer une variable avec plusieurs valeurs possibles et d'effectuer un traitement en conséquence.
  • 48. switch 48 Afficher les nombres inferieurs stricts à 10. switch ($choix) { case 1: echo "La valeur est 1"; break; case 2: echo "La valeur est 2"; break; case 3: echo "La valeur est 3"; break; }
  • 49. Exercice : 1. Déclarer la variable $jour et lui affecter le nom d’un jour en anglais. Ecrire un script qui selon la valeur de $jour affichera sa traduction en anglais. 2. Soit 4 images img1.gif …img2.gif. Selon le choix de l’utilisateur (1,2, 3, 4), écrire un script qui affichera l’mage correspondante.
  • 50. break 50  Cette instruction permet de forcer la sortie d'une boucle avant que la condition de sortie ne soit remplie.  Utilisée surtout dans le switch elle permet de quitter le test lorsque la valeur est trouvée
  • 51. 51 break Afficher les entiers plus petits que 5. <?php $i = 0; while ($i < 10) { if ($i <= 5) Echo " $i "; else break; $i++; }
  • 52. 52 Exemple avec switch  break accepte un argument numérique optionnel qui vous indiquera combien de structures emboîtées ont été interrompues. $i = 0; while ( ++$i ) { switch ( $i ) { case 5: echo "à 5<br>n"; break 1; case 10: echo "à 10; quitting<br>n"; break 2; Default: break; }}?>
  • 53. 53 Continue  L’instruction continue est utilisée dans une boucle afin d’éluder (ignorer) les instructions de l’itération courante afin de passer directement à l’itération suivante.  continue accepte un argument numérique optionnel qui vous indiquera combien de structures emboîtées ont été ignorées.
  • 54. 54 Continue <?php $i=1; while ($i< 10) { If ($i==5) {$i++; continue;}//aller à l’iteration suivante else {echo $i; $i++;} echo " la partie non affiché"; } ?>
  • 55. Les tableaux 55  Dans PHP, on retrouve aussi, comme dans tout autre langage, les structures tableaux.  La déclaration d'un tableau se fait de la même manière que la déclaration d'une variable avec un indice se trouvant entre [ et ]. $liste[0] = 1; // on crée un tableau, et sa première valeur est 1  Pour un tableau à deux dimensions: $matrice[0][0] = 1
  • 56. Les tableaux 56  Il n'est pas obligatoire de préciser l'indice pour affecter une valeur. $liste[] = 10; // équivaut à $liste[0] = 1; $liste[] = 11; // équivaut à $liste[1] = 45; $liste[] = 16; // équivaut à $liste[2] = 6;  La déclaration et l’initialisation d'un tableau peuvent également se faire par l'intermédiaire de la fonction 'array()'.  Cette fonction permet de préciser les indices ainsi que les valeurs du tableau (à l'aide de l'opérateur =>). $liste[ ] = array(0=>10, 1=>11, 2=>16);
  • 57. Exercice : 57 Exercice : initialiser un tableau de 10 entiers. 1. Afficher la somme de ses éléments 2. Afficher le maximum de ses éléments 3. Afficher le minimum de ses éléments 4. Trier ce tableau
  • 58. Corrigé 58 1. Afficher la somme de ses éléments <?php $liste[ ] = array(0=>20, 1=>11, 2=>16, 3 =>19, 4=>1, 5=>26, 6=>10, 7=>31, 8=>16, 9=>13); $som=0; For($i=0;$i<10; $i++) $som=$som+liste[$i]; Print" La somme des éléments du tableau est = $som"; ?>
  • 59. corrigé <?php $liste[ ] = array(0=>20, 1=>11, 2=>16, 3 =>19, 4=>1, 5=>26, 6=>10, 7=>31, 8=>16, 9=>13); $max=$liste[0]; For($i=0;$i<10; $i++) {if(liste[$i]>$max) $max=liste[$i]; } Print" Le max est = $max"; ?>
  • 60. 60 Les tableaux associatifs  $a = array(1 => "nom", 2 => "prénom",3=>"age"); Syntaxe: array( [key =>] value , ... ) $a[key] = value;  $tableau = array('le bon', 'la brute', 'le truand'); $b = array (1, 2, 3, 17); Syntaxe: array( value1 , ... )
  • 61. 61 Les tableaux Associatif  Un tableau classique utilise des indices numériques  Un tableau associatif peut utiliser comme clé d’autre types comme les chaine de caractères $a["couleur"] = "rouge"; $a["saveur"] = "sucrée"; $a["forme"] = "rond"; $a["nom"] = "pomme";
  • 62. 62 Les tableaux Multidimension <?php $a[1] = $f; # tableau à une dimension $a["foo"] = $f; $a[1][0] = $f; # tableau à deux dimensions $a["foo"][2] = $f; # on peut mélanger les indices associatifs et numériques $a[3]["bar"] = $f; $a["foo"][4]["bar"][0] = $f; # tableau à quatre dimensions ?>
  • 63. 63 Les tableaux Multidimension  La fonction array() peut être emboîtée pour remplir un tableau à plusieurs dimensions : <?php $a = array( "pomme" => array("couleur" => "rouge","saveur" => "sucrée","forme" => "rond"), "orange" => array("couleur" => "orange","saveur" => "amère","forme" => "rond"), "banane" => array("couleur" => "jaune","saveur" => "paste-y","forme" => "bananoïd") ); echo $a["pomme"]["saveur"]; # va afficher "sucrée"
  • 64. 64 Parcourt des tableaux  Les tableaux classiques peuvent être parcourus facilement en utilisant la clé numérique  Pour les tableaux associatif c’est un peut plus compliqué
  • 65. 65 Parcourt des tableaux $i = 0; while ($i < 10) { Echo "$arr[$i] "; } $i++; }
  • 66. Les Fonctions 66  PHP est un langage structuré, les fonctions en font une partie intégrante puisqu’elles sont la base d’une programmation claire et efficace.  Une fonction est une sorte de sous-programme isolé du reste du code, exécutable à tout moment, depuis n’importe quelle partie du code principal ou n’importe quelle autre fonction, par simple appel.  De plus, les avantages des fonctions sont :  La non répétition de la même séquence de code  Le gain de productivité.  La meilleure lisibilité du code.  La maintenance facilitée.
  • 67. Déclaration 67  Une fonction est une séquence de code qui peut remplir n’importe quelle tâche.  Tout code valide peut figurer dans le corps d’une fonction.  Déclaration : La syntaxe de déclaration s’appuie sur le mot clé function. Function nom_fonction(arguments_éventuels)
  • 68. Fonctions 68 exemple : function bonjour( ) { echo " Bonjour ! " ; } Bonjour( ) ; // affiche 'bonjour' à l’écran
  • 69. Fonctions 69 Exemple: Pour que la fonction retourne un résultat, on utilisera le mot clé return function bonjour2( ) { return " Bonjour !" ; } echo bonjour2( ) ; bonjour affiche le résultat elle-même, alors qu’il faut afficher le résultat de bonjour2 pour obtenir une action similaire.
  • 70. Déclaration, paramètres, valeurs de retour 70 function lecture($nom, $texte = 'Bonjour') { if(empty($nom)){ //si $nom est vide return false; }else { echo "$texte $nom"; // on affiche le texte return true; // fonction exécutée avec succès } }
  • 71. 71 Fonctions liées aux tableaux associatifs foreach: Deux syntaxes possibles <?php foreach(array_expression as $value) commandes //La première forme passe en revue le tableau //array_expression. A chaque itération, la valeur de l’élément //courant est assigné à $value et le pointeur interne de //tableau est avancé foreach(array_expression as $key => $value) commandes //La deuxième forme fait exactement la même chose, mais // c’est la clé de l’élément courant qui est assigné à la // variable $key. ?>
  • 72. 72 Fonctions liées aux tableaux associatifs foreach ($arr as $value) { echo "Valeur: $value<br>n"; } foreach ($arr as $key => $value) { echo "Clé: $key; Valeur: $value<br>n"; }
  • 73. 73 foreach <?php /* exemple 1: valeur seule */ $a = array (1, 2, 3, 17); foreach ($a as $v) { print "Valeur courante de $a: $vn"; } /* exemple 1: valeur (avec clé associée) */ $a = array (1, 2, 3, 17); $i = 0; /* pour affichage seulement*/ foreach($a as $v) { print "$a[$i] => $v n"; } ?>
  • 74. 74 Foreach /* exemple 1: valeur et clé */ $a = array ( "un" => 1, "deux" => 2, "trois" => 3, "dix-sept" => 17 ); foreach($a as $k => $v) { print "$a[$k] => $v.n"; } ?>
  • 75. Parcourt avec each() et list() 75  each(..)  Cette fonction permet de parcourir tous les éléments d'un tableau sans se soucier de ses bornes.  Elle retourne la combinaison clé-valeur courante du tableau passé en paramètre, puis se positionne sur l'élément suivant, et cela du premier au dernier indice.  Lorsque la fin du tableau est atteinte, each( ) retourne la valeur faux (false).  list(..)  Associée à la fonction each(), elle permet d'affecter les éléments du tableau renvoyé par each dans deux valeurs distinctes.  Reset()  le pointeur interne de tableau est automatiquement ramené au premier élément du tableau
  • 76. 76 Fonctions each() et list() Parcourt avec « reset », « each » et « list » <?php $nom["ali"]="rassi"; $nom[" fati"]="Alilo"; $nom[" kamal"]="Dabar"; reset($nom); while (list($clef,$valeur)=each($nom)) echo "$clef, $valeur<br>"; ?>
  • 77. 77 Autres fonctions sur les tableaux  La navigation dans les éléments du tableau s'effectue à l'aide des fonctions next() , prev() et 'each()'.  Le nombre d'éléments d'un tableau peut être obtenu à l'aide de la fonction count().  Le tri des tableaux est facilité par de nombreuses fonctions : asort(), ksort(), sort(), usort(), etc...
  • 78. Fonctions each() et list() 78 exemple : $tableau = array("val1","val2","val3","val4"); //on crée un tableau while ($var = each($tableau)) { echo "$var[0] : $var[1]"; } Ce code produit le résultat suivant : 0 : val1 1 : val2 2 : val3 3 : val4 ici l'indice est affecté au premier élément de $var et la valeur au deuxième élément $var
  • 79. Variables d'environnement 79  L'un des aspects fondamentaux d'une application construite sur une architecture de type intranet est l'utilisation des variables d'environnement du serveur,  notamment celles du serveur HTTP  Avec PHP toutes les variables d'environnement du serveur sont automatiquement reprises dans les scripts PHP en tant que variables globales.  Ainsi il suffit de les utiliser directement dans le code.
  • 80. 80 Fonctions liées aux variables d'environnement  Accès aux éléments du Tableau $_SERVER $IP=$_SERVER['REMOTE_ADDR'] echo $IP; @ IP de la machine cliente  La fonction phpinfo() affiche toute seule un tableau récapitulatif :  des paramètres du serveur  et de l'interpréteur PHP, <?php phpinfo(); ?>  PHP fournit la fonction getenv() permettant de retourner la valeur de la variable d'environnement passée en paramètre: <?php echo getenv("HTTP_USER_AGENT"); ?>
  • 81. Exemples de variables d’environnement81  SERVER_SOFTWARE :Chaîne d'identification du serveur, qui est données dans les entêtes lors de la réponse aux requêtes.  PHP_SELF : Le nom du fichier du script en cour d'exécution, par rapport au document root.  DOCUMENT_ROOT : La racine sous laquelle le script courant est exécuté, comme défini dans la configuration du serveur.  REMOTE_ADDR : L'adresse IP du client qui demande la page courante.  REMOTE_PORT :Le port utilisé par la machine cliente pour communiquer avec le serveur web.  SCRIPT_FILENAME : Le chemin absolu jusqu'au script courant.  SERVER_PORT : Le port de la machine serveur utilisé pour les communications. Par défaut, c'est '80'. En utilisant SSL, par exemple, il sera remplacé par le numéro de port HTTP sécurisé.  REQUEST_URI : L'URI qui a été fourni pour accéder à cette page
  • 82. Exercice : 1. Ecrire un programme qui permet d’afficher les variables d’environnement suivantes $HTTP_HOST, $SERVER_ADDR, $SERVER_, $SERVER_NAME, $SERVER_PORT et la valeur correspondante
  • 83. Variables issues de formulaires 83  Les variables sont issues de formulaires HTML  Elles correspondent aux différents champs positionnés entre les balises <FORM> et </FORM> de ce formulaire.  La page qui reçoit ces variables est celle qui est désignée par l'attribut ACTION de la balise <FORM>.  exemple : <HTML> <FORM ACTION="test.php" METHOD=POST> Nom : <INPUT TYPE=text NAME="nom"> <INPUT TYPE=submit VALUE="Envoyer"> </FORM></HTML>
  • 84. Variables issues de formulaires 84 <?php $NOM=$_POST['nom']; echo $NOM; ?>
  • 85. Fonction empty et isset  Les deux fonctions testent les variables et il y a souvent une confusion entre eux bool emtpy(mixed var) retourne FALSE si var à une valeur non vide et différente de zéro. bool isset(mixed var) renvoie TRUE si la variable var est définie, FALSE sinon.
  • 86. Fonction empty et isset  La confusion vient de la définition d'une chaîne vide :  "" (une chaîne vide)  0 (0 en tant qu’entier)  "0" (0 en tant que chaîne de caractères)  NULL  FALSE  array() (un tableau vide)  var $var ; (une variable déclarée, mais sans valeur dans une classe)  Exemple: <?php $var = 0; if (empty($var)) {// Evalué à vrai car $var est vide echo '$var vaut soit 0, vide, ou pas définie du tout'; } if (isset($var)) {// Evalué à vrai car $var est défini echo '$var est définie même si elle est vide'; } ?>
  • 87. Fonctions include - require  Les deux fonctions include et require permettent d'insérer dans un script le code contenu dans un autre fichier. <?php include "phrase.txt";?>  On peut l’intégrer dans n’importe quelle page d’un site  On peut tout aussi bien insérer du code PHP.
  • 88. Différence entre require et include  Les includes sont conditionnels.  Ils peuvent être placés dans une condition IF ou bien dans une boucle FOR, WHILE...  Les requires sont nécessaires et devrait donc se trouver toujours en début de script.  C'est généralement un require() que l'on devrait utiliser (pour tout ce qui est librairies ou paramètres globaux).  Bien souvent il est conseillé d'utiliser require_once() et include_once() à la place.  Le différence avec leur homologue est que le fichier ne sera inclu qu'une seule fois quoi qu'il
  • 89. Fonctions include - require  ex : <?php include "phrase.php";?>  Où le contenu du fichier phrase.php serait : <?php $phrase="Phrase du jour"; print("La phrase du jour est : "); print($phrase); ?>  L'utilisation la plus courante de ces fonctions est par exemple:  l'inclusion des en-têtes  des menus  des bas de page qui sont présents sur toutes les pages du site.
  • 90. Fonction include  Par exemple, si on ne veut pas utiliser de "frames", qui sont source de conflit avec certains navigateurs, on est obligé de remettre le menu sur chaque page.  Avec une inclusion PHP, il suffit de définir le menu dans un fichier et de l'appeler sur chaque page.  Ensuite lors d'une modification du menu, un seul fichier est à modifier pour mettre à jour le site entier.  Cette manière de procéder prend toute son
  • 91. Include : Passage de variables  Le contenu du fichier "inclus" est ajouté directement au script principal.  Les variables sont donc accessibles aussi bien à partir du script qu'à partir du fichier.  ex : <?php $phrase="Phrase du jour"; include "phrase.php";?>  Le fichier "phrase.php" peut donc interpréter la valeur de la variable "$phrase".  Contenu du fichier "phrase.php" : <?php print("La phrase du jour est : "); print($phrase);
  • 92. Passage par valeur & référence 92  Le passage des paramètres tel qu’on l’a vu précédemment est ce que l’on appelle le passage par valeur.  Il existe une autre manière de procéder :le passage par référence.  On passe à la fonction la référence (adresse mémoire) d’une variable existante, et la fonction modifie directement la valeur de cette variable.
  • 93. Passage par valeur & référence 93 function bonjour(&$phrase) { $phrase= " bonjour " ; } $chaine = " Phrase qui va disparaître " ; bonjour($chaine) ; echo $chaine ; // affiche "bonjour" à l’écran
  • 94. Fonctions Mathématiques 94  Elles y sont toutes !  Abs, cos, sin, tan, sqrt, exp, …  pi( )
  • 95. Chaînes de caractères 95  strpos (chaîne, sous chaîne) : retourne la position de la sous chaîne dans la chaîne. Dans le cas où la chaîne existe en plusieurs exemplaires, c’est la position de la première occurrence qui est retournée.  strrpos retourne quand à elle la position de la dernière occurrence.  strstr (chaîne, sous chaîne) retourne la portion de la chaîne à partir de la première occurrence de la sous chaîne.  strlen (chaîne) : retourne la taille de la chaîne.  strtolower|strtoupper (chaîne) : retourne la chaîne passée en paramètres an minuscules (resp. majuscules).  str_replace (car d’origine, car de destination, chaîne) : remplace le caractère d’origine par le caractère de destination dans la chaîne.  g supprime les caractères invisibles (espaces,n, …) au début et à la fin de la chaîne.  ereg(chaîne à chercher, chaîne) : retourne vrai si la chaîne à chercher (sous forme de chaîne ou sous forme d’expression régulière) est contenue dans chaîne.
  • 96. Fonction date 96  La fonction date permet de décrire une date en retournant une chaîne de caractères sous le format désiré.  Cette date est exprimée en fonction du timestamp qui est le nombre de secondes écoulé depuis le 1 Janvier 1970 (époque UNIX).  Syntaxe : Chaîne date(entier format, entier timestamp)  L'argument timestamp est optionnel, s'il est vide, l'heure et la date courante seront utilisées.  Exemple: echo date("d-m-Y"); // affiche : "12-12-2000"
  • 97. 97 Fonction date <?php $date_du_jour = date ("d-m-Y"); $heure_courante = date ("H:i"); echo 'Nous sommes le : '; echo $date_du_jour; echo ' Et il est : '; echo $heure_courante; ?>
  • 98. 98 Fonction date  Voici la liste des paramètres possibles pour la fonction date() : - a : "am" (matin) ou "pm" (après-midi) - A : "AM" (matin) ou "PM" (après-midi) - d : Jour du mois, sur deux chiffres (éventuellement avec un zéros) : "01" à "31" - D : Jour de la semaine, en trois lettres (et en anglais) : par exemple "Fri" (pour Vendredi) - F : Mois, textuel, version longue; en anglais, i.e. "January" (pour Janvier) - h : Heure, au format 12h, "01" à "12" - H : heure, au format 24h, "00" à "23" - g : Heure, au format 12h sans les zéros initiaux, "1" à "12" - G : Heure, au format 24h sans les zéros initiaux, "0" à "23" - i : Minutes; "00" à "59" - j : Jour du mois sans les zéros initiaux: "1" à "31" - l : Jour de la semaine, textuel, version longue; en anglais, i.e. "Friday" (pour Vendredi) - L : Booléen pour savoir si l'année est bissextile ("1") ou pas ("0") - m : Mois; i.e. "01" à "12" - n : Mois sans les zéros initiaux; i.e. "1" à "12" - M : Mois, en trois lettres (et en anglais) : par exemple "Jan" (pour Janvier) - s : Secondes; i.e. "00" à "59" - S : Suffixe ordinal d'un nom
  • 99. Gestion des fichiers 99  La fonction de base est la fonction fopen( ).  C'est elle qui permet d'ouvrir un fichier, que ce soit pour le lire, le créer, ou y écrire.  Sa syntaxe est : entier fopen(chaine nomdufichier, chaine mode);
  • 100. Gestion des fichiers 100 Différents modes disponibles r : ouverture en lecture seulement w : ouverture en écriture seulement (la fonction crée le fichier s'il n'existe pas) a : ouverture en écriture seulement avec ajout du contenu à la fin du fichier (la fonction crée le fichier s'il n'existe pas) r+ : ouverture en lecture et écriture w+ : ouverture en lecture et écriture (la fonction crée le fichier s'il n'existe pas) a+ : ouverture en lecture et écriture avec ajout du contenu à la fin du fichier (la fonction crée le fichier s'il n'existe pas).
  • 101. Gestion des fichiers 101 Exemples : $fp = fopen("fichier.txt","r"); //lecture $fp = fopen(" fichier.txt ","w"); //écriture depuis début du fichier $fp = fopen("fichier.txt","a"); //écriture depuis fin du fichier
  • 102. Lecture dans un fichier 102 < ?php $monfichier = fopen("monfichier.txt", "r") ; // ouverture en lecture if ( !($monfichier)) { print(" Impossible d’ouvrir le fichier ") ; exit ;} while ( !feof($monfichier) ) { $ligne = fgets($monfichier,255); // 255 caractères max. ou bien fin de ligne. echo " $ligne <BR>" ; } fclose ($monfichier) ;?>
  • 103. Écriture dans un fichier 103 < ? $monFichier = fopen("monfichier.txt",’ "w") ; // ouverture en écriture if ( !($monfichier)) { print(‘’ Impossible de créer le fichier n’’) ; exit ; } fputs($monfichier, "ligne 1") ; // on écrit deux lignes fputs($monfichier, "ligne 2") ; fclose($monfichier) ; // on ferme le fichier, on libère les ressources
  • 104. Fonction Explode 104  Il est fréquent d’avoir des fichiers contenant différents champs séparés par un délimiteur quelconque.  Une fonction très utile dans ces cas là est la fonction explode.  Sa syntaxe est la suivante explode ("caractère délimiteur", chaîne de donnée)
  • 105. Fonction Explode 105 <?php if (!file_exists(« test.txt »)) { print "<H3><BR>Erreur, fichier compteur manquant<BR>"; exit; } else { $fd = fopen($fic,"r"); while (!feof($fd)) { $ligne = fgets($fd,255); $tab=explode("|",$ligne); print "Nom : $tab[0]<br>"; print "Prénom : $tab[1]<br>"; print "Age : $tab[2]<br>« ;} fclose($fd); }?>