Dev PHP Instructions de Base 1
Dev PHP Instructions de Base 1
Dev PHP Instructions de Base 1
1
PLAN
Présentation du PHP Surcharge de propriétés et de
La syntaxe de base méthodes
Les types Classes étendues et héritage
Les variables Les classes et méthodes
Les constantes abstraites
Les expressions Étendre des classes abstraites
Les opérateurs Les interfaces
Les structures de contrôle Les variables superglobales
Les fonctions Création d’un formulaire HTML
Récupération des données d’un
Gestion des erreurs
formulaire
Les tableaux MySQL
La date en PHP Se connecter à une BD MySQL en
PHP orienté objet PHP
Principe d’encapsulation Gestion d’une BD en utilisant
PDO
22
PHP Data Objects (PDO)
PDO
Bases de données supportées
Classes prédéfinies
Connexions et gestionnaire de connexion
Gestion des erreurs de connexion
Gestion des erreurs : code d'erreur
Gestion des erreurs : exceptions
Exécution d'une requête
Exploitation des résultats d'une requête
Modes de récupération des données
Préparation d'une requête
Association des paramètres d'une requête
Préparation puis exécution d'une requête
Intérêt des requêtes préparées
33
Introduction
• Créé en 1994 par Rasmus Lerdorf pour les besoins des pages web
personnelles (livre d’or, compteurs, etc.)
• A l’époque, PHP signifiait Personnal Home Page.
• Actuellement Hypertext Preprocessor.
• Les serveurs d’application les plus utilisés pour développer des sites
web dynamique en PHP :
– EasyPHP
– WAMP
– XAMPP
– …. 44
Client / serveur
55
Langages côté client et côté serveur
• Un site Internet n’est qu’un ensemble de fichiers de codes liés entre
eux.
66
Où écrire le code PHP ?
• On écrit nos scripts PHP soit dans des fichiers
dédiés soit intégré au sein du code HTML.
Exemple :
<!DOCTYPE html>
<html>
<head>
<title>Cours PHP & MySQL</title>
<meta charset="utf-8">
<link rel="stylesheet" href="cours.css">
</head>
<body>
<h1>Titre principal</h1>
<?php
echo 'Hello World <br>'; //Scripts PHP
?>
<p>Un paragraphe</p>
</body>
</html>
8
Intégration d’un script dans une page
Autres syntaxes d’intégration :
<!DOCTYPE html>
<html>
<head>
<title>Cours PHP & MySQL</title>
<meta charset="utf-8">
<link rel="stylesheet" href="cours.css">
</head>
<body>
<h1>Titre principal</h1>
<?
echo 'Hello World <br>'; //Scripts PHP
?>
<p>Un paragraphe</p>
</body>
</html>
9
Intégration d’un script dans une page
Autres syntaxes d’intégration :
<!DOCTYPE html>
<html>
<head>
<title>Cours PHP & MySQL</title>
<meta charset="utf-8">
<link rel="stylesheet" href="cours.css">
</head>
<body>
<h1>Titre principal</h1>
<script language="php">
echo 'Hello World <br>'; //Scripts PHP
</script>
<p>Un paragraphe</p>
</body>
</html>
10
Commentaires
• Un script en langage php se commente comme en langage
C/C++ :
<?php
/* commentaire
sur plusieurs lignes
*/
?>
– Exemples :
– echo "Bonjour<br>";
– print("Bonjour");
12
Enregistrer et exécuter un fichier PHP
13
Les variables
• Une variable est un conteneur servant à stocker des
informations, comme une chaine de caractères ou un
nombre.
• Exemple :
<?php
$nom="je m'appelle Adam";
$age=30;
$tele="1010";
echo gettype($tele);
?>
• Il est possible de convertir une variable en un type primitif grâce au
cast (comme en C).
– Exemple :
• $str = "12"; // $str vaut la chaîne "12"
• $nbr = (int)$str; // $nbr vaut le nombre 12
• echo $nbr
15
Les variables
• Quelques fonctions :
– empty($var) : renvoie vrai si la variable est vide
– isset($var) : renvoie vrai si la variable existe
– unset($var) : détruit une variable
– gettype($var) : retourne le type de la variable
--settype($var, "type") : convertit la variable en type :
(Integer, string )
– vérifier si une variable est
is_long(), is_double(), is_string(), is_array(), is_object(), is_bool(),
is_float(), is_numeric(), is_integer(), is_int()…
16
Les variables
• La portée d’une variable est limitée au bloc dans
lequel elle a été crée.
10:4 19
Constantes
• L’utilisateur peut définir des constantes dont la valeur est fixée une
fois pour toute.
• Syntaxe :
define("var",valeur) : définit la constante var (sans $) de valeur,
• Exemples :
define("author", "Test");
echo author; // affiche Test
define("MY_YEAR", 1990);
echo MY_YEAR; // affiche 1990
10:4 20
Les opérateurs
• Un opérateur est un symbole qui va être utilisé pour
effectuer certaines actions notamment sur les variables
et leurs valeurs.
– Les opérateurs arithmétiques ;
– Les opérateurs d’affectation ;
– Opérateurs sur les bits ;
– Opérateurs de comparaison ;
– Opérateur de contrôle d’erreur ;
– Opérateurs d’incrémentation et décrémentation ;
– Les opérateurs logiques ;
– Opérateurs de chaînes ;
– Opérateurs de tableaux ;
– Opérateurs de types ;
10:4 21
Opérateur de concaténation (le point)
• Exemple:
<?php
$prenom = "Adam";
$nom = "Salim";
$age = 12;
echo "Je m'appelle $prenom et j'ai $age ans <br>";
echo "Je m'appelle {$prenom} et j'ai {$age} ans <br>";
echo 'Je m\'appelle $prenom et j\'ai $age ans <br>';
$var1 = "Je suis $prenom $nom, j'ai $age ans <br>";
$var2 = "Je suis {$prenom} {$nom}, j'ai {$age} ans <br>";
$var3 = 'Je suis $prenom $nom, j\'ai $age ans';
$var4= "Je suis " .$prenom. " " .$nom. ", j'ai " .$age. " ans";
$var5= 'Je suis ' .$prenom. ' ' .$nom. ', j\'ai '.$age. ' ans';
echo $var1;
echo $var2;
echo $var3;
echo $var4;
echo $var5;
?>
10:4 22
Les opérateurs arithmétiques
• En PHP, nous allons pouvoir utiliser les
opérateurs arithmétiques suivants :
+ Addition
- Soustraction
* Multiplication
/ Division
% Modulo (reste d’une division euclidienne)
** Exponentielle (élévation à la puissance d’un nombre par un autre)
10:4 23
Les opérateurs arithmétiques
• Exemple:
<?php
$x = 2 + 3 * 4; //$x stocke 14
$y = (2 + 3) * 4; //$y stocke 20
$z = 2 ** 3 - 4 * 4 / 8; //$z stocke 6
echo '$x : ' .$x. '<br>$y : ' .$y. '<br>$z : ' .$z;
?>
10:4 24
Les opérateurs d’affectation / combinés
Les opérateurs d’affectation permettent d’affecter une
certaine valeur à une variable:
Opérateur Définition
$x = 5;
$x -= 3; //$x stocke désormais 2
echo '$x stocke : ' .$x. '<br>';
$y = 3; $y à la puissance $x
$y **= $x; //$y stocke 3^2 = 3 * 3 = 9
echo '$y stocke : ' .$y;
?>
10:4 26
Les opérateurs de comparaison
Opérateur Définition
< Permet de tester si une valeur est strictement inférieure à une autre
> Permet de tester si une valeur est strictement supérieure à une autre
<= Permet de tester si une valeur est inférieure ou égale à une autre
>= Permet de tester si une valeur est supérieure ou égale à une autre
10:4 27
Les opérateurs de comparaison
<?php
$x = 4;
echo '<br>';
10:4 29
La condition if en PHP
• La condition if va nous permettre d’exécuter un bloc
de code si et seulement si le résultat d’un test
vaut true.
• Exemple:
<?php
$x = 4; // On affecte la valeur 4 à $x
$y = 2; // On affecte la valeur 2 à $y
if($x > 1)
echo '$x contient une valeur supérieure à 1';
if($x == $y)
echo '$x et $y contiennent la même valeur';
?>
10:4 30
La condition if…else en PHP
• La structure conditionnelle if…else nous permet d’exécuter
un premier bloc de code si un test renvoie true ou un autre
bloc de code dans le cas contraire.
• Exemple
<?php
$x = 4; //On affecte la valeur 4 à $x
$y = 2; //On affecte la valeur 2 à $y
if($x > 1){
echo '$x contient une valeur stric. supérieure à 1 <br>'; }
else{
echo '$x contient une valeur inférieure ou égale à 1 <br>';
}
if($x == $y){
echo '$x et $y contiennent la même valeur <br>';
}else{
echo '$x et $y contiennent des valeurs différentes <br>';
}
?> 31
La condition if…elseif…else en PHP
• La condition if…elseif…else est une structure conditionnelle
encore plus complète que la condition if…else puisqu’elle
nous permet de générer autant de cas que l’on souhaite.
• Exemple:
<?php
$x = 4; //On affecte la valeur 4 à $x
$y = 2; //On affecte la valeur 2 à $y
if($x > 1){
echo '$x contient une valeur stric. supérieure à 1 <br>';
}elseif($x == 1){
echo '$x contient la valeur 1 <br>';
}else{
echo '$x contient une valeur stric. inférieure à 1 <br>';
}
?>
32
Exercice
35
L’instruction switch
<?php
$x = 2;
switch($x){
case 0:
echo '$x stocke la valeur 0';
break;
case 1:
echo '$x stocke la valeur 1';
break;
case 2:
echo '$x stocke la valeur 2';
break;
case 3:
echo '$x stocke la valeur 3';
break;
default:
echo '$x ne stocke pas de valeur entre 0 et 4';
}
10:48 ?> 35
Exercice
1) Créer un programme qui permet de calculer le total d’une
commande en appliquant une remise selon la quantité
commandée [total = prix*quantité*(1-remise)]
Si qté = 1 ==> remise = 0%
Si qté = 2 ==> remise = 5%
Si qté = 3 ==> remise = 10%
Si qté = 4 ==> remise = 15%
Si qté = 5 ==> remise = 20%
Si qté > 5 ==> remise = 25%
2) Modifier le programme pour le cas où :
Si qté < 4 ==> remise = 0%
Si qté = 4 ==> remise = 15%
Si qté = 5 ==> remise = 20%
Si qté > 5 ==> remise = 25%
Les boucles
• Les boucles vont nous permettre d’exécuter
plusieurs fois un bloc de code tant qu’une
condition donnée est vérifiée.
38
La boucle for
• La boucle for fonctionne selon trois phases :
– Une phase d’initialisation ;
– Une phase de test ;
– Une phase d’incrémentation.
Exemple:
<?php
for($x = 0 ; $x <= 5 ; $x++){
echo '$x contient la valeur ' .$x. '<br>';
}
?>
39
La boucle while
• Exemple:
<?php
$x = 0;
while($x <= 10){
echo '$x contient la valeur ' .$x. '<br>';
$x++;
}
?>
40
la boucle do… while
• la boucle do… while nous permet d’exécuter un
code tant qu’une condition donnée est vraie,
• Cette fois-ci le code sera exécuté avant que la
condition soit vérifiée.
• Exemple :
<?php
$y = 20;
do{
echo '$y contient la valeur ' .$y. '<br>';
$y++;
}while($y <= 5);
?>
41
La boucle foreach
• La boucle foreach est particulièrement efficace pour
lister les tableaux associatifs dont il n’est nécessaire de
connaître ni le nombre d’éléments ni les clés.
• Syntaxe :
foreach($tableau as $valeur)
{ //bloc utilisant la valeur de l'élément courant
Echo $valeur
}
• La variable $valeur contient successivement chacune
des valeurs du tableau.
42
La boucle foreach
• la deuxième syntaxe est la suivante :
foreach($tableau as $cle=>$valeur)
{
//bloc utilisant la valeur et la clé de l'élément courant
}
46
L’instruction continue
• l’instruction continue n’arrête pas la boucle
en cours mais seulement l’itération en
cours.
47
L’instruction continue
• Exemple:
<?php
//Interruption d'une boucle for
for($i=0;$i<20;$i++){
if($i%5==0) {
continue;
}
echo $i,"<br>";
}
48
L’instruction goto
• goto renvoie l’exécution en un point précis du
script marqué par un label (dit aussi étiquette),
• un label est constitué par une chaîne de
caractères terminée par le caractère :
• Exemple:
<?php
goto label_1;
echo 'Cacher';
label_1 :
echo 'Voir';
?>
49