Upload
adrienne-gervais
View
113
Download
1
Embed Size (px)
Citation preview
PHPPHP
Gestion des systèmes d’information
Classe terminale
Professeur: Mme BELLILI
PlanPlan
Histrique du PHPHistrique du PHP
Intégration de PHP dans une page WebIntégration de PHP dans une page Web
CommentariesCommentaries
Variables et typesVariables et types
OpérateursOpérateurs
ConstanteConstante
MathématiqueMathématique
Chaine de caractèreChaine de caractère
AffichageAffichage
Les tableauxLes tableaux
Tableaux associatifsTableaux associatifs
Structures de contrôlesStructures de contrôles
Les fonctionsLes fonctions
PHPPHP
historique du PHP
Créé en 1994 par Rasmus Lerdorf pour les besoins des Créé en 1994 par Rasmus Lerdorf pour les besoins des
pages web personnelles.pages web personnelles.
PHP est un langage de script, exécuté du côté serveur. PHP est un langage de script, exécuté du côté serveur.
A l’époque, PHP signifiait A l’époque, PHP signifiait Personal Home PagePersonal Home Page. .
Maintenant, c'est PHP Hypertext ProcessorMaintenant, c'est PHP Hypertext Processor
Langage incrusté au code HTML et interprété du côté Langage incrusté au code HTML et interprété du côté
serveur.serveur.
Il supporte tous les standards du web et est gratuit. Il Il supporte tous les standards du web et est gratuit. Il
s’est rapidement répandu sur la toile.s’est rapidement répandu sur la toile.
1
Intégration de PHP dans une page WebIntégration de PHP dans une page Web
Les pages web sont au format html. Les pages web sont au format html.
Les pages web dynamiques générées avec PHP sont au format Les pages web dynamiques générées avec PHP sont au format php. php.
Le code source php est directement inséré dans le fichier html Le code source php est directement inséré dans le fichier html comme ci-dessous: comme ci-dessous:
<?php <?php … ?>… ?>
ExempleExemple
<html><html>
<body><body>
<?php<?php
echo "echo "BonjourBonjour";";
?>?>
</body></body>
</html></html>
Autres syntaxes d’intégration : -
<? … ?>
<script language="php"> … </script>
<% … %>
Autres syntaxes d’intégration : -
<? … ?>
<script language="php"> … </script>
<% … %>
5
Exemple de scriptExemple de script
<html><body><h1>Mon premier script</h1><?php echo "Bonjour\n"; ?></body></html>
Exemple de script, code source (côté serveur) :
Résultat affiché par le navigateur :
6
Éléments du langage PHP
Éléments du langage PHP
CommentairesCommentaires
ExempleExemple
<?php<?php
// commentaire de fin de ligne// commentaire de fin de ligne
/* commentaire /* commentaire
sur plusieurs lignes */sur plusieurs lignes */
?>?>
Tout ce qui se trouve dans un commentaire est ignoré. Tout ce qui se trouve dans un commentaire est ignoré.
Il est conseillé de commenter largement ses scripts.Il est conseillé de commenter largement ses scripts.
7
Variables & types (I)Variables & types (I)
Le typage des variables est implicite en PHP.Le typage des variables est implicite en PHP.
Les identificateurs de variable sont précédés du symbole « Les identificateurs de variable sont précédés du symbole « $$ » » (dollars). (dollars).
ExempleExemple : : $var$var..
Les variables peuvent être de type :Les variables peuvent être de type :
Entier (Entier (integerinteger), ), Réel (Réel (doubledouble), ), Chaîne de caractères (Chaîne de caractères (stringstring), ), Tableau (Tableau (arrayarray), ), Booléen (Booléen (booleanboolean).).
8
Variables & types (II)Variables & types (II)
La portée d’une variable en PHP, est limitée au bloc dans La portée d’une variable en PHP, est limitée au bloc dans
lequel elle a été créée. lequel elle a été créée.
11
Opérateurs arithmétiquesOpérateurs arithmétiques
++ (addition), (addition), -- (soustraction), (soustraction), ** (multiplié), (multiplié), // (divisé), (divisé), %% (modulo), (modulo), ++++ (incrément), (incrément), ---- (décrément). (décrément).
Opérateurs d’assignementOpérateurs d’assignement
== (affectation), (affectation), *=*= ($x*=$y équivalent à $x=$x*$y), ($x*=$y équivalent à $x=$x*$y), /=, +=, -/=, +=, -=, %=.=, %=.
Opérateurs logiquesOpérateurs logiques and, and, &&&& (et), or, (et), or, |||| (ou), (ou),!! (non) (non)
Opérateurs de comparaisonOpérateurs de comparaison ==== (égalité), (égalité), << (inférieur strict), (inférieur strict), <=<= (inférieur large), (inférieur large), >>, , >=>=, , !=!= (différence).(différence).
Opérateurs (I)Opérateurs (I)
12
Opérateurs de concaténationOpérateurs de concaténation
Pour concaténer deux chaînes de caractères en PHP, Pour concaténer deux chaînes de caractères en PHP, on utilise le point (.).on utilise le point (.).
ExempleExemple
$exp1="nom1";$exp1="nom1";
$exp2="nom2";$exp2="nom2";
echo exp1.exp2;echo exp1.exp2;
//affiche la valeur nom1nom2//affiche la valeur nom1nom2
Opérateurs (II)Opérateurs (II)
13
ConstantesConstantes
On peut définir des constantes dont la valeur est fixée une fois On peut définir des constantes dont la valeur est fixée une fois pour toute. Les constantes ne portent pas le symbole $ pour toute. Les constantes ne portent pas le symbole $ (dollars) en début d’identificateur et ne sont pas modifiables.(dollars) en début d’identificateur et ne sont pas modifiables.
define("var",valeur) : définit la constante var (sans $) de valeur define("var",valeur) : définit la constante var (sans $) de valeur valeur.valeur.
Exemple 1Exemple 1
definedefine("auteur","Arthur");("auteur","Arthur");
echo author;echo author; // affiche ‘Arthur’// affiche ‘Arthur’
Exemple 2Exemple 2
definedefine(MY_YEAR,1980);(MY_YEAR,1980);
echo MY_YEAR;echo MY_YEAR; // affiche 1980// affiche 1980
Contrairement aux variables, les identificateurs de constantes Contrairement aux variables, les identificateurs de constantes (et aussi ceux de fonction) ne sont pas sensibles à la casse.(et aussi ceux de fonction) ne sont pas sensibles à la casse.
14
Mathématiques Mathématiques
La plupart des fonctions mathématiques du langage C reste La plupart des fonctions mathématiques du langage C reste valable en PHP.valable en PHP.
abs($x)abs($x) : valeur absolue: valeur absolue
ceil($x)ceil($x) : arrondi supérieur: arrondi supérieur
floor($x)floor($x) : arrondi inférieur: arrondi inférieur
pow($x,$y)pow($x,$y) : x exposant y: x exposant y
round($x,$i)round($x,$i) : arrondi de x à la ième : arrondi de x à la ième
décimale.décimale.
max($a, $b, $c …)max($a, $b, $c …) : retourne le maximum: retourne le maximum
pi()pi() : retourne la valeur de Pi: retourne la valeur de Pi
Et aussiEt aussi
cos, sin, tan, exp, log, min, pi, sqrt…cos, sin, tan, exp, log, min, pi, sqrt…
15
Chaînes de caractères (I)Chaînes de caractères (I)
Quelques caractères spéciaux : \n (nouvelle ligne), \r (retour Quelques caractères spéciaux : \n (nouvelle ligne), \r (retour à la ligne), \t (tabulation horizontale), \\ (antislash), \$ à la ligne), \t (tabulation horizontale), \\ (antislash), \$ (caractère dollars), \" (double quote). (caractère dollars), \" (double quote).
ExempleExemple : : echo "Hello Word !echo "Hello Word !\n\n";";
Opérateur de concaténation de chaînes : Opérateur de concaténation de chaînes : .. (point) (point)
Exemple 1Exemple 1
$f1 = "Hello";$f1 = "Hello";
$f2 = "Word";$f2 = "Word";
echo $f1.$f2; echo $f1.$f2;
Exemple 2 Exemple 2
$name = "Henry";$name = "Henry";
$whoiam = $name."IV";$whoiam = $name."IV";18
Chaînes de caractères (II)Chaînes de caractères (II)
Affichage d’une chaîne avec echoAffichage d’une chaîne avec echo : :
ExemplesExemples
echo 'Hello Word.';echo 'Hello Word.';
echo "Nom : ", $name;echo "Nom : ", $name;
echo ("Bonjour");echo ("Bonjour");
19
Quelques fonctions chaînesQuelques fonctions chaînes
strlen($str)strlen($str) : retourne le nombre de caractères d’une chaîne : retourne le nombre de caractères d’une chaîne
strtolower($str)strtolower($str) : conversion en minuscules : conversion en minuscules
strtoupper($str)strtoupper($str) : conversion en majuscules : conversion en majuscules
trim($str)trim($str) : suppression des espaces de début et de fin de : suppression des espaces de début et de fin de
chaînechaîne
substr($str,$i,$j)substr($str,$i,$j) : retourne une sous chaîne de $str de taille : retourne une sous chaîne de $str de taille
$j et débutant à la position $i$j et débutant à la position $i
strnatcmp($str1,$str2)strnatcmp($str1,$str2) : comparaison de 2 chaînes . : comparaison de 2 chaînes .
addslashes($str)addslashes($str) : déspécialise les caractères spéciaux : déspécialise les caractères spéciaux
(', ", \)(', ", \)
ord($char)ord($char) : retourne la valeur ASCII du caractère $char : retourne la valeur ASCII du caractère $char
Chaînes de caractères (III)Chaînes de caractères (III)
20
AffichageAffichage
Les fonctions d’affichage : Les fonctions d’affichage :
echo()echo() : écriture dans le navigateur sans formatage : écriture dans le navigateur sans formatage
print()print() : écriture dans le navigateur sans formatage : écriture dans le navigateur sans formatage
printfprintf([$format, $arg1, $arg2])([$format, $arg1, $arg2]) : écriture formatée, i.e. la : écriture formatée, i.e. la chaîne de caractère est constante et contient le format chaîne de caractère est constante et contient le format d’affichage des variables passées en argumentd’affichage des variables passées en argument
Exemples Exemples
echoecho "Bonjour $name"; "Bonjour $name";
printprint("Bonjour $name");("Bonjour $name");
printfprintf("Bonjour %s", $name);("Bonjour %s", $name);
21
Les tableauxLes tableaux
Permettent d’enregistrer une liste de valeurs de même Permettent d’enregistrer une liste de valeurs de même type dans une structure unique.type dans une structure unique.
L’accès aux éléments d’un tableau se fait via l’opération L’accès aux éléments d’un tableau se fait via l’opération d’indexation.d’indexation.
ExempleExemple
$ville[0]="Paris";$ville[0]="Paris";
$ville[1]="Toulouse";$ville[1]="Toulouse";
$ville[2]="Lyon";$ville[2]="Lyon";
echo "Je vis à $ville[0] <BR>";echo "Je vis à $ville[0] <BR>";
Les tableaux (I)Les tableaux (I)
22
Tableaux (II)Tableaux (II)
Une variable tableau est de type Une variable tableau est de type arrayarray. Un tableau accepte . Un tableau accepte des éléments de tout type. Les éléments d’un tableau des éléments de tout type. Les éléments d’un tableau peuvent être de types différents et sont séparés d’une peuvent être de types différents et sont séparés d’une virgule. virgule.
Un tableau peut être initialisé avec la syntaxe array.Un tableau peut être initialisé avec la syntaxe array.
Exemples Exemples $tab_colors = array(‘red’, ’yellow’, ’blue’, ‘white’);$tab_colors = array(‘red’, ’yellow’, ’blue’, ‘white’);$tab = array('baby', 2002, 20.5, $name);$tab = array('baby', 2002, 20.5, $name);
Mais il peut aussi être initialisé au fur et à mesure.Mais il peut aussi être initialisé au fur et à mesure.
ExemplesExemples $prenoms[ ] = "Clément"; $villes[0] = "Paris";$prenoms[ ] = "Clément"; $villes[0] = "Paris";$prenoms[ ] = "Justin"; $villes[1] = "Londres";$prenoms[ ] = "Justin"; $villes[1] = "Londres";
23
Tableaux (III)Tableaux (III)
L’appel d’un élément du tableau se fait à partir de son indice.L’appel d’un élément du tableau se fait à partir de son indice.
Exemple :Exemple : echo $tab[10];echo $tab[10]; // pour accéder au 11ème élément// pour accéder au 11ème élément
Parcours d’un tableau. Parcours d’un tableau. $tab = array(‘Hugo’, ‘Jean’, ’Mario’);$tab = array(‘Hugo’, ‘Jean’, ’Mario’);
Exemple 1 Exemple 1 $i=0;$i=0;while ($i <= count($tab)) { while ($i <= count($tab)) { // // count()count() retourne le nombre d’éléments retourne le nombre d’éléments echo $tab[$i].’\n’;echo $tab[$i].’\n’; $i++;$i++;}}
24
ExempleExemple
foreach (foreach ($tab $tab asas $elem $elem) ) {{ echo $elem."\n";echo $elem."\n";}}
La variable $elem prend pour valeurs successives La variable $elem prend pour valeurs successives toustous
les éléments du tableau $tab.les éléments du tableau $tab.
Tableaux (VI)Tableaux (VI)
25
Tableaux associatifs (I)Tableaux associatifs (I)
Un tableau associatif est appelé aussi Un tableau associatif est appelé aussi dictionnairedictionnaire ou ou hashtablehashtable. On associe à chacun de ses éléments une clé . On associe à chacun de ses éléments une clé dont la valeur est de type chaîne de caractères.dont la valeur est de type chaîne de caractères.
L’initialisation d’un tableau associatif est similaire à celle L’initialisation d’un tableau associatif est similaire à celle d’un tableau normal.d’un tableau normal.
Exemple 1 -Exemple 1 -
$personne = array("Nom" => "César", "Prénom" => "Jules");$personne = array("Nom" => "César", "Prénom" => "Jules");
Exemple 2 -Exemple 2 -
$personne["Nom"] = "César";$personne["Nom"] = "César";
$personne["Prénom"] = "Jules";$personne["Prénom"] = "Jules";
Ici à la valeur "Nom" de la clé est associée la valeur "César".Ici à la valeur "Nom" de la clé est associée la valeur "César".26
Exemple -Exemple -
$tab1 = array ( "SAM" => "Samedi","DIM"=>"Dimanche","LUN"=>"Lundi","MAR"=>"Mardi","MER"=>"Mecredi","JEU"=>"Jeudi","VEN"=>"Vendredi");
Tableaux associatifs (II)
27
Tableaux associatifs (III)Tableaux associatifs (III)
Parcours d’un tableau associatif.Parcours d’un tableau associatif.$personne = $personne = array(array("Nom" "Nom" =>=> "César" "César",, "Prénom" "Prénom" =>=> "Jules" "Jules"));;
Exemple - Exemple -
foreach ($personne as $elem) foreach ($personne as $elem) {{
echo $elem;echo $elem;}}
Ici on accède directement aux éléments du tableau sans passer Ici on accède directement aux éléments du tableau sans passer par les clés.par les clés.
Exemple -Exemple -
foreach ($personne as $key => $elem) foreach ($personne as $key => $elem) {{
echo "$key : $elem";echo "$key : $elem";}}
Ici on accède simultanément aux clés et aux éléments.Ici on accède simultanément aux clés et aux éléments.
28
Structures de contrôle (I)
Structures conditionnelles
if ( condition )
{
instructions;
}
if (condition)
{
instructions;
}
else
{
instructions;
}
Structures conditionnelles
if ( condition )
{
instructions;
}
if (condition)
{
instructions;
}
else
{
instructions;
}
Exemple
if (isset($v1))
{
echo "<br/>;
echo $v1." existe";
}
else
{
echo " Error";
}
Exemple
if (isset($v1))
{
echo "<br/>;
echo $v1." existe";
}
else
{
echo " Error";
}
4
29
Structures de contrôle (II)Structures de contrôle (II)
Structures répétitives
for ( init ; critère d’arrêt ; incr ) {
instructions;}
while ( condition ) { instructions;}
do {
instructions;}
while( condition );
Structures répétitives
for ( init ; critère d’arrêt ; incr ) {
instructions;}
while ( condition ) { instructions;}
do {
instructions;}
while( condition );
Exemples
$i=0;
while ($i <= count($tab1))
{
echo "<br/>";
echo $tab1[$i]." ".strlen($tab1[i]);
$i++;
}
for ($i=0;i<=count($tab1);$i++)
{
echo "<br/>";
echo $tab1[$i]." ".strlen($tab1[i]);
}
Exemples
$i=0;
while ($i <= count($tab1))
{
echo "<br/>";
echo $tab1[$i]." ".strlen($tab1[i]);
$i++;
}
for ($i=0;i<=count($tab1);$i++)
{
echo "<br/>";
echo $tab1[$i]." ".strlen($tab1[i]);
}
30
Fonctions Fonctions
Comme tout langage de programmation, php permet l’écriture de Comme tout langage de programmation, php permet l’écriture de fonctions. fonctions.
Les fonctions peuvent prendre des arguments dont il n’est pas Les fonctions peuvent prendre des arguments dont il n’est pas besoin de spécifier le type. Elles peuvent de façon optionnelle besoin de spécifier le type. Elles peuvent de façon optionnelle retourner une valeur.retourner une valeur.
L’appel à une fonction peut ne pas respecter son prototypage L’appel à une fonction peut ne pas respecter son prototypage (nombre de paramètres). Les identificateurs de fonctions sont (nombre de paramètres). Les identificateurs de fonctions sont insensibles à la casse.insensibles à la casse.
ExempleExemple
functionfunction mafonction mafonction(($toto$toto)) {{$toto += 15;$toto += 15;echo "Salut !";echo "Salut !";returnreturn ($toto+10); ($toto+10);
}}$nbr = MaFonction$nbr = MaFonction((15.115.1));;
32