La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1. Sommaire Quest-ce que PHP ? Les structures de base Traitements de base Traitements de chaînes Utilisation des tableaux Fonctions usuelles Formulaires.

Présentations similaires


Présentation au sujet: "1. Sommaire Quest-ce que PHP ? Les structures de base Traitements de base Traitements de chaînes Utilisation des tableaux Fonctions usuelles Formulaires."— Transcription de la présentation:

1 1

2 Sommaire Quest-ce que PHP ? Les structures de base Traitements de base Traitements de chaînes Utilisation des tableaux Fonctions usuelles Formulaires et superglobales Environnement web et superglobales Les cookies et Les sessions Gestion des objets Gestion de chiers Gestion des ux et Flux de sortie PHP Envoyer et recevoir des s Travailler avec une base de données 2

3 Sommaire Erreurs et exceptions XML : concepts et SimpleXML XML avancé Les services web Les templates Les systèmes de cache Gestion des images Expressions régulières Sécurité Outils de développement PHP Les CMS Les frameworks 3

4 Quest-ce que PHP ? Particularités de PHP De nombreux connecteurs techniques : bases de données (Oracle, SQL Server, MySQL, dBase, ODBC, etc.), annuaires (LDAP, etc.), systèmes de paiement en ligne (VeriSign, Cybercash, Crédit Mutuel, etc.) et lessentiel des protocoles et des formats quon peut rencontrer (TCP, HTTP, SMTP, LDAP, IMAP, POP, SSL, Soap, XSLT, XML, PDF, etc.). 4

5 Quest-ce que PHP ? Particularités de PHP Les performances de PHP : PHP est extrêmement performant et fiable. Avec un seul serveur standard, on peut répondre à des millions de requêtes par jour. Des sites ou des applications importantes utilisent PHP (Le Monde, Le Figaro, TV5, Yahoo, TF1, Canal +…). La portabilité Coûts de licence Coûts de développement Dynamisme de la communauté PHP : La communauté PHP est estimée par la société Zend à près de développeurs courant

6 Quest-ce que PHP ? Historique PHP/FI : créé en 1995 par Rasmus Lerdorf. La version 2.0 fut publié officiellement en novembre PHP 3 : En 1997, Andi Gutsman et Zeev Suraski (fondateurs de Zend : combinaison des prénoms Zeev et Andi) essayèrent dutiliser PHP/FI dans le cadre du développement dune application de e-commerce, mais les performances nétaient pas suffisantes. Ils décidèrent de réécrire PHP/FI de façon complète. Au bout dune dizaine de mois de test et de débogage, la première version officielle de PHP 3.0 fut lancée en juin

7 Quest-ce que PHP ? Historique PHP 4 : en mai 2000, le Zend Engine fut officiellement intégré à PHP dans sa nouvelle version : PHP 4.0. Les principales évolutions tenaient à sa prise en charge des sessions HTTP et de nombreux serveurs web, ainsi quà la mise en tampon des sorties et à une sécurité accrue des informations visiteurs. 7

8 Quest-ce que PHP ? Historique PHP 5 : La première version stable de PHP 5 a fait son apparition en les principales nouveautés sont : lintégration du Zend Engine 2, qui amène une prise en charge complète de la programmation orientée objet ; la refonte de la prise en charge de XML ; lintégration de la base de données SQLite ; la simplification des principales tâches courantes. lapparition dun socle commun pour la gestion des appels aux bases de données : PHP Data Object (PDO). 8

9 Quest-ce que PHP ? PHP peut être utilisé pour différents types de développement. Fonctionnement couplé à un serveur web Applications en ligne de commande Services web Applications graphiques 9

10 Quest-ce que PHP ? Dans la plupart des déploiements, PHP est utilisé conjointement avec : généralement Apache comme serveur HTTP ou, plus rarement, Microsoft IIS ; MySQL et Oracle comme SGBD/R ; on peut aussi rencontrer PostgreSQL ou Microsoft SQL Server ; Linux ou BSD comme système dexploitation ; Windows ou MacOS sont aussi des possibilités fonctionnelles. Les plates-formes en production reposent en majorité sur le quatuor Linux, Apache, MySQL et PHP (LAMP). 10

11 Quest-ce que PHP ? 11

12 Quest-ce que PHP ? 12 Fonctionnement de PHP

13 Quest-ce que PHP ? 13 La machine virtuelle de PHP

14 Les structures de base Dans lexemple plus haut, PHP ajoute une chaîne de caractères au milieu du code HTML 14

15 Balises douverture et de fermeture Les structures de base Il est conseillé fortement lutilisation unique de louverture

16 Les commentaires Les structures de base 16

17 Variables Les structures de base Les variables en PHP se trouvent sous la forme $nom_variable. Il est important de noter que les noms de variables sont sensibles à la casse. $PHP, $Php et $php sont trois variables différentes. 17 PHP est un langage dit « de typage faible et dynamique ». Lutilisation en lecture dune variable non initialisée nest pas un problème. Une variable inexistante renverra la valeur NULL

18 Variables Les structures de base Les variables de PHP sont par défaut ce quon appelle des variables locales. Elles ne sont visibles et lisibles que dans le contexte où elles ont été créées. Parfois, lutilisation de variables globales dans les fonctions peut être utile. On peut alors utiliser le tableau $GLOBALS[]. Il sagit dun tableau associatif contenant des références sur toutes les variables globales actuellement définies. Ainsi, $GLOBALS['var'] représente la variable globale $var. 18

19 Variables Les structures de base Une alternative à lutilisation du tableau $GLOBALS est de déclarer une variable comme étant une variable globale en début de fonction grâce au mot-clé global. Il doit être suivi dun ou plusieurs noms de variables séparés par des virgules.. 19

20 Test dexistence Les structures de base La fonction isset() permet de tester si une variable existe. Dans le cas où lon a précédemment affecté une valeur à $var, la fonction renverra la valeur TRUE. Dans le cas contraire, la fonction renverra la valeur FALSE. 20

21 Destruction Les structures de base La fonction unset() permet de détruire une variable dans votre programme. Après son exécution, la variable qui lui est passée en paramètre nexiste plus. 21

22 Variables dynamiques Les structures de base Les variables dynamiques (aussi dites variables variables) reposent sur le fait que le nom dune variable peut lui-même être une variable. Voyons lexemple ci-après pour appréhender la chose : 22

23 Variables dynamiques Les structures de base Il est aussi possible de référencer un nom dynamique en une seule opération grâce à des accolades : 23

24 Constantes Les structures de base Le langage PHP dénit les constantes à laide de la fonction define(). Elles ne peuvent plus par la suite recevoir dautres valeurs. Par convention, on écrit les constantes en majuscules pour faciliter la relecture du code. 24 Les constantes ne comportent pas de $ devant leur nom.

25 Constantes Les structures de base Il est fréquent de construire des chiers qui ne contiennent que des constantes, pour gérer des paramètres de conguration ou des traductions de manière centralisée. 25 switch ($op) { default: case "langselect": $title = _INSTALL_L0;... switch ($op) { default: case "langselect": $title = _INSTALL_L0;...

26 Types de données Les structures de base PHP dispose de quatre types de données simples : des booléens, des entiers, des nombres à virgule ottante et des chaînes de caractères. 26

27 Types de données Les structures de base 27 Il est aussi possible dutiliser des fonctions daccès rapide telle que is_string() Les fonctions is_double() et is_float() vérient si la valeur est un nombre à virgule ottante, les fonctions is_int() et is_integer() vérient si la valeur est un nombre entier. Les fonctions is_boolean(), is_array(), is_null(), is_object() et is_resource() vérient respectivement si la valeur est un booléen, un tableau, la valeur NULL, un objet ou une ressource interne.

28 Types de données Les structures de base 28

29 Interprétation des variables Les structures de base À lintérieur dune chaîne entre guillemets, les variables sont automatiquement remplacées par leur valeur. 29 propriete = "livre" ; $chaine = "Son {$objet->propriete} a déclenché la légende"; $tableau['index'] = "livre" ; $chaine = "Son {$tableau['index']} a déclenché..."; ?> propriete = "livre" ; $chaine = "Son {$objet->propriete} a déclenché la légende"; $tableau['index'] = "livre" ; $chaine = "Son {$tableau['index']} a déclenché..."; ?>

30 Le caractère déchappement (ou protection) Les structures de base Pour éviter cela, on protège les guillemets avec le caractère déchappement, une barre oblique inverse (symbole \). Dans ce cas, linterpréteur PHP ne considérera pas les guillemets comme un signe de n puisquils sont protégés. On aura donc : 30

31 Le caractère déchappement (ou protection) Les structures de base De la même façon, tous les caractères normalement interprétés par PHP peuvent être protégés pour être utilisés tels quels en les préxant par une barre oblique inverse. Cest en particulier le cas avec $ pour éviter que ce qui suit ne soit interprété comme une variable à remplacer, et avec \ pour éviter quil soit associé au caractère suivant et ne le protège. 31

32 Le caractère déchappement (ou protection) Les structures de base Dautres combinaisons peuvent être utilisées. Les plus courantes sont \n (caractère de changement de ligne), \r (retour chariot) et \t (tabulation). Si vous souhaitez utiliser des caractères spéciaux, vous pouvez les référencer par leur code caractère. Ainsi, \x20 représente le caractère espace (caractère 20 en hexadécimal dans la table ASCII). 32

33 Délimitation par apostrophes Les structures de base Lorsquune chaîne contient beaucoup de caractères interprétables comme des guillemets ou des barres obliques inverses, il devient complexe de protéger chaque caractère. Il est alors possible de délimiter une chaîne de caractères avec des apostrophes (caractère '). Dans ce cas, seules les apostrophes sont à protéger ; tous les autres caractères peuvent être mis directement dans la chaîne et seront pris tels quels sans être interprétés. 33

34 Syntaxe heredoc Les structures de base La syntaxe heredoc se comporte exactement comme une chaîne à guillemets, sans les guillemets. Cela signie que vous navez pas à échapper les guillemets dans cette syntaxe. es variables sont remplacées par leur valeur, et le même soin doit leur être apporté que dans les chaînes à guillemets. 34

35 Accéder à un caractère dune chaîne Les structures de base Il est possible daccéder directement à un caractère dans une chaîne en le référençant par sa position. Il suffit alors dajouter la position entre accolades après le nom de la variable : 35

36 Les tableaux (array) Les structures de base PHP permet deux types de tableaux : les tableaux indexés numériquement et les tableaux associatifs. Il nest pas nécessaire de déclarer leur taille lors de la déclaration, elle est gérée par PHP. 36

37 Les tableaux (array) Les structures de base 37

38 Tableaux associatifs Les structures de base Il associe une chaîne de caractères à un élément. On parle alors de tableau associatif ou de table de hachage. 38 "Cyril", "ville" => "Paris", "travail" => "informatique" ) ; ?> "Cyril", "ville" => "Paris", "travail" => "informatique" ) ; ?>

39 Tableaux associatifs Les structures de base Il associe une chaîne de caractères à un élément. On parle alors de tableau associatif ou de table de hachage. 39

40 Tableaux multidimensionnels Les structures de base 40 Il est également possible de créer des tableaux à plusieurs dimensions pour stocker, par exemple, une matrice.

41 Transtypage Les structures de base Quand PHP convertit un texte en nombre, il regarde en début de la chaîne de caractères sil trouve un nombre connu. Si cest le cas, il fait une conversion directe : 41 echo "3" + 1 ; // Affiche 4 echo 1 + "-1.3e3" ; // Affiche echo 1 + "3 petits cochons" ; // Affiche 4 echo 1 + "petits cochons" ; // Affiche 1 echo "3" + 1 ; // Affiche 4 echo 1 + "-1.3e3" ; // Affiche echo 1 + "3 petits cochons" ; // Affiche 4 echo 1 + "petits cochons" ; // Affiche 1 Les booléens ne permettent que deux valeurs, une valeur vraie et une valeur fausse. Sont considérés comme des valeurs fausses : les constantes FALSE et NULL ; une chaîne de caractères vide ; le nombre entier ou à virgule ottante 0 ; une chaîne de caractères contenant uniquement le nombre 0 ; un tableau vide ; un objet avec aucun champ déni. Toutes les autres données seront considérées comme « vraies ».

42 Forcer une conversion Les structures de base PHP fait automatiquement et de manière satisfaisante toutes les conversions nécessaires entre les différents types de données. Vous pouvez toutefois forcer une conversion en ajoutant le type de donnée entre parenthèses devant la donnée. 42

43 Forcer une conversion Les structures de base Vous pouvez aussi passer par des fonctions dédiées pour les conversions les plus courantes. Ainsi, intval() convertit une donnée en paramètre vers un entier, strval() fait la conversion vers une chaîne de caractères, floatval() et doubleval() font la conversion vers un nombre à virgule ottante. 43

44 Opérateurs daffectation Traitements de base Lopérateur daffectation est le signe égal. La variable avant le symbole égal (=) prend la valeur spécifiée après. 44

45 Affectation par copie et références Traitements de base Il est possible, de créer un lien fort entre deux variables en ajoutant un & juste derrière le signe daffectation. Dans ce cas, on dit que les deux noms référencent la même valeur. 45

46 Affectation par copie et références Traitements de base Pour effacer une référence, il vous suft dutiliser unset() sur la variable. Vous effacez alors le lien entre le nom et la valeur. Les éventuels autres noms utilisant la même valeur ne sont pas affectés. 46

47 Opérateurs arithmétiques Traitements de base 47

48 Lutilité du modulo (%) Traitements de base Modulo renvoie le reste de la division. Par exemple, pour 15 % 2, on fait le calcul suivant : 15 = 7 * Le modulo de 15%2 est donc 1. Cela nous permet, par exemple, dafficher une ligne sur deux dun tableau HTML avec une couleur de fond différente : 48

49 Incrémentation Traitements de base 49

50 Opérateurs combinés Traitements de base 50

51 La concaténation Traitements de base 51

52 Opérateurs de comparaison Traitements de base 52

53 Opérateurs logiques Traitements de base 53

54 Opérateurs sur les bits Traitements de base 54

55 Priorités entre opérateurs Traitements de base 55

56 Structures de contrôle : Les conditions Traitements de base Linstruction if(){} est la structure de test la plus basique. Elle permet dexécuter une suite dinstructions en fonction dune condition. La condition entre parenthèses est évaluée et les instructions situées entre les accolades sont exécutées seulement si lévaluation aboutit à TRUE 56 18 && $age < 35) { echo 'Votre profil est : jeune adulte'; } ?> 18 && $age < 35) { echo 'Votre profil est : jeune adulte'; } ?>

57 Structures de contrôle : Les conditions Traitements de base On peut également spécier une suite dinstructions à exécuter lorsque la condition nest pas réalisée, avec linstruction else{} 57

58 Structures de contrôle : Les conditions Traitements de base il est possible denchaîner une série dinstructions if (sans avoir besoin de les imbriquer) à laide de linstruction elseif 58

59 Structures de contrôle : Linstruction switch Traitements de base Cette instruction permet de faire plusieurs tests sur la valeur dune variable, ce qui évite de faire plusieurs if imbriqués et simplie ainsi la lecture du code. Il est possible démuler le comportement dune suite if/elseif/else en mettant un break pour chaque case. 59

60 Structures de contrôle : Linstruction while Traitements de base Linstruction while(){} correspond à « tant que ». Donc, on pourra exécuter des instructions tant quune condition sera remplie 60

61 Structures de contrôle : Linstruction for Traitements de base 61

62 Structures de contrôle : Linstruction foreach Traitements de base Cest un moyen simple de parcourir un à un les éléments dun tableau. 62 'Cyril', 'ville' => 'Paris', 'travail' => 'informatique' ) ; foreach ($tab as $element) { echo "Valeur: $element \n"; } foreach ($tab as $cle => $valeur) { echo "Cle : $cle; Valeur: $valeur \n"; } ?> 'Cyril', 'ville' => 'Paris', 'travail' => 'informatique' ) ; foreach ($tab as $element) { echo "Valeur: $element \n"; } foreach ($tab as $cle => $valeur) { echo "Cle : $cle; Valeur: $valeur \n"; } ?>

63 Structures de contrôle : Linstruction foreach Traitements de base Il est possible, depuis PHP 5, dutiliser les valeurs par référence et non par copie. Si vous modiez une valeur, elle sera alors modiée dans le tableau dorigine. 63

64 Les instructions darrêt : Break Traitements de base Linstruction break permet de sortir dune structure conditionnelle telle que for, while, foreach ou switch. 64

65 Les instructions darrêt : Continue Traitements de base Linstruction continue est utilisée dans une boucle an déluder les instructions de litération courante et donc pour passer directement à la suivante. 65

66 Les fonctions utilisateurs Traitements de base 66

67 Les fonctions utilisateurs : Visibilité des variables Traitements de base 67 Les variables extérieures à une fonction ne sont pas disponibles dans cette fonction et vice versa.

68 Les fonctions utilisateurs : Visibilité des variables Traitements de base 68 Il existe plusieurs niveaux de dénition de variable : Le niveau global permet à une variable dêtre visible dans la fonction et à lextérieur de la fonction. Le niveau static permet de dénir une variable locale à la fonction, qui persiste durant tout le temps dexécution du script. Cette variable conservera ses différentes valeurs à chaque nouvel appel de la fonction. Le niveau local, utilisé par défaut, permet de dénir une variable qui ne sera visible que dans la fonction en cours.

69 Les fonctions utilisateurs : Passage par copie ou référence Traitements de base 69

70 Les fonctions utilisateurs : Retourner plusieurs valeurs Traitements de base 70

71 Les fonctions utilisateurs : Nombre de paramètres indéni Traitements de base 71

72 Les fonctions utilisateurs : Inclure des bibliothèques ou des chiers Traitements de base 72 PHP permet lutilisation de deux fonctions très simples et cependant très utiles qui permettent la réutilisation de code. En utilisant les fonctions require() ou include(), il est possible de charger des chiers dans un script PHP. Les inclusions peuvent par exemple servir à la gestion des paramètres de connexion à une base de données.


Télécharger ppt "1. Sommaire Quest-ce que PHP ? Les structures de base Traitements de base Traitements de chaînes Utilisation des tableaux Fonctions usuelles Formulaires."

Présentations similaires


Annonces Google