Introduction au langage de programmation PHP.
Présentation réalisée la première fois le lundi 10 mars 2014 à l'IIM : Institut de l'Internet et du Multimédia pour les années préparatoires.
Cette présentation a pour but d'initier les élèves à l'apprentissage de PHP : comprendre sa logique, expliquer les bases de ce langage, sa syntaxe et dans quels cas il peut être utilisé.
Après présentation orale de ces slides, des exercices de mise en pratique ont été réalisés en Atelier avec les élèves.
Voici le plan de la présentation :
• Php, Le principe
• Les basiques
- Les variables
- Afficher un élément
• Les indispensables
- Les conditions
- Les boucles
- Les tableaux
• Les utiles
- Les fonctions
- GET & POST
- Include
4. 1h30 pour parler de ...
1. Php, Le principe
2. Les basiques
a. Les variables
b. Afficher un élément
5. 1h30 pour parler de ...
1. Php, Le principe
2. Les basiques
a. Les variables
b. Afficher un élément
3. Les indispensables
a. Les conditions
b. Les boucles
c. Les tableaux
6. 1h30 pour parler de ...
1. Php, Le principe
2. Les basiques
a. Les variables
b. Afficher un élément
3. Les indispensables
a. Les conditions
b. Les boucles
c. Les tableaux
4. Les utiles
a. Les fonctions
b. GET & POST
c. Include
11. Comment s’execute php ?
http://google.fr
1 Envoi d’une requête au serveur
2
Le serveur
interprète le php
12. Comment s’execute php ?
http://google.fr
1 Envoi d’une requête au serveur
2
Le serveur
interprète le php
3 Le serveur renvoi une page HTML
13. Comment s’execute php ?
http://google.fr
1 Envoi d’une requête au serveur
2
Le serveur
interprète le php
3 Le serveur renvoi une page HTML
‘‘Vous ne verrez jamais le php d’un site par le biais de votre navigateur
30. La concaténation
Exemples :
$example1 = 'Le nom est '.$name.' et le modèle est '.$model;
$full_name = $name.' '.$model;
$name = 'iPhone';
$model = "5C";
Résultat : Le nom est iPhone et le modèle est 5C
31. La concaténation
Exemples :
$example1 = 'Le nom est '.$name.' et le modèle est '.$model;
$full_name = $name.' '.$model;
$example2 = "Le nom est $name et le modèle est $model";
$name = 'iPhone';
$model = "5C";
Pour les paresseux :)
Résultat : Le nom est iPhone et le modèle est 5C
Résultat : Le nom est iPhone et le modèle est 5C
32. Au final, c’est quoi la différence ?
'
"
Plus rapide
Plus facile
$example1 = 'Le nom est '.$name.' et le modèle est '.$model;
$example2 = "Le nom est $name et le modèle est $model";
44. a.Les conditions : syntaxe
Si tu as 100 ans,
alors on affiche : Bravo !
if($age == 100){
echo 'Bravo !';
}
45. a.Les conditions : syntaxe
Si tu as 100 ans,
alors on affiche : Bravo !
if($age == 100){
echo 'Bravo !';
}
Entre parenthèses : la condition() Entre accolades : l’action à exécuter{}
46. a.Les conditions : syntaxe
Si tu as 100 ans,
alors on affiche : Bravo !
if($age == 100){
echo 'Bravo !';
}
Entre parenthèses : la condition() Entre accolades : l’action à exécuter{}
Pour vérifier la condition
== est égal à
!= n’est pas égal à
< est inférieur à
> est supérieur à
<= est inférieur ou égal à
>= est supérieur ou égal à
=== est égal est à la même type
47. a.Les conditions : dans la vie de tous les jours
if, elseif & else
si, sinon si & sinon
48. Si l’ascenseur …
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
49. Si l’ascenseur …
if($inside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
50. Si l’ascenseur …
Sinon, si le bouton extérieur du 2éme étage
est sélectionné : je m’arrête
if($inside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
51. Si l’ascenseur …
Sinon, si le bouton extérieur du 2éme étage
est sélectionné : je m’arrête
if($inside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
elseif($outside_bt2 == true){
//l’ascenseur s’arrête
}
52. Si l’ascenseur …
Sinon, si le bouton extérieur du 2éme étage
est sélectionné : je m’arrête
if($inside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
elseif($outside_bt2 == true){
//l’ascenseur s’arrête
}
Sinon : je continue
53. Si l’ascenseur …
Sinon, si le bouton extérieur du 2éme étage
est sélectionné : je m’arrête
if($inside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur du 2éme étage
est sélectionné : je m’arrête
else{
//l’ascenseur continue
}
elseif($outside_bt2 == true){
//l’ascenseur s’arrête
}
Sinon : je continue
54. OR et AND
Si le bouton intérieur OU le bouton extérieur du 2éme étage est sélectionné : je m’arrête
if($inside_bt2 == true OR $outside_bt2 == true){
//l’ascenseur s’arrête
}
|| et &&
55. OR et AND
Si le bouton intérieur OU le bouton extérieur du 2éme étage est sélectionné : je m’arrête
if($inside_bt2 == true OR $outside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur ET extérieur du 1er étage ne sont pas sélectionnés : je continue
if($inside_bt1 != true AND $outside_bt1 == false){
//l’ascenseur continue
}
|| et &&
56. OR et AND
Si le bouton intérieur OU le bouton extérieur du 2éme étage est sélectionné : je m’arrête
if($inside_bt2 == true OR $outside_bt2 == true){
//l’ascenseur s’arrête
}
Si le bouton intérieur ET extérieur du 1er étage ne sont pas sélectionnés : je continue
if($inside_bt1 != true AND $outside_bt1 == false){
//l’ascenseur continue
}
‘‘Pour plus de simplicité, on regroupe les conditions qui ont les mêmes actions
|| et &&
58. b.Les boucles : while - syntaxe
$i vaut 0
Tant que $i est inférieur à 5,
alors on affiche la valeur de $i
On ajoute 1
$i = 0;
while($i < 5){
echo $i;
$i++;
}
01234Résultat
59. b.Les boucles : while - syntaxe
Entre parenthèses : la condition() Entre accolades : l’action à exécuter{}
$i vaut 0
Tant que $i est inférieur à 5,
alors on affiche la valeur de $i
On ajoute 1
$i = 0;
while($i < 5){
echo $i;
$i++;
}
01234Résultat
60. b.Les boucles : while - syntaxe
Entre parenthèses : la condition() Entre accolades : l’action à exécuter{}
$i++ : Une façon plus courte d’écrire $i = $i + 1;
C’est l’incrémentation
$i vaut 0
Tant que $i est inférieur à 5,
alors on affiche la valeur de $i
On ajoute 1
$i = 0;
while($i < 5){
echo $i;
$i++;
}
01234Résultat
61. b.Les boucles : for - syntaxe
for($i = 0; $i < 5; $i++){
echo $i;
}
Pour i égal à 0 ; tant qu’il est inférieur à 5 ; on lui ajoute 1
alors on affiche la valeur de $i
01234Résultat
62. b.Les boucles : for - syntaxe
Entre parenthèses : valeur initiale ; condition ; incrémentation()
Entre accolades : l’action à exécuter{}
for($i = 0; $i < 5; $i++){
echo $i;
}
Pour i égal à 0 ; tant qu’il est inférieur à 5 ; on lui ajoute 1
alors on affiche la valeur de $i
01234Résultat
65. c.Les tableaux : itératif - syntaxe
Clé Valeur
0 Bonnie
1 Clyde
2 Tom
$f_name = array('Bonnie','Clyde','Tom');
Afficher des valeurs du tableau :
echo $f_name[0]; Bonnie
echo $f_name[2]; Tom
66. c.Les tableaux : itératif - syntaxe
Clé Valeur
0 Bonnie
1 Clyde
2 Tom
$f_name = array('Bonnie','Clyde','Tom');
Afficher des valeurs du tableau :
echo $f_name[0]; Bonnie
echo $f_name[2]; Tom
Créer manuellement des lignes :
$f_name[3] = 'Jerry';
Clé Valeur
3 Jerry
Il existe également la fonction array_push();
76. c.Les fonctions : créez vos fonctions
Une fonction effectue une ou plusieurs actions et retourne un résultat
function plusTwo($nb){
$nb = $nb+2;
return $nb;
}
plusTwo(10); 12
plusTwo(-4); -2
77. c.Les fonctions : créez vos fonctions
Une fonction effectue une ou plusieurs actions et retourne un résultat
function plusTwo($nb){
$nb = $nb+2;
return $nb;
}
plusTwo(10); 12
plusTwo(-4); -2
function plusX($nb, $plus){
$nb = $nb+$plus;
return $nb;
}
plusX(10, 6); 16
plusX(-4, 4); 0
78. c.Les fonctions : créez vos fonctions
Une fonction effectue une ou plusieurs actions et retourne un résultat
function plusTwo($nb){
$nb = $nb+2;
return $nb;
}
plusTwo(10); 12
plusTwo(-4); -2
Entre parenthèses : le ou les paramètres() Entre accolades : l’action à exécuter{}
function plusX($nb, $plus){
$nb = $nb+$plus;
return $nb;
}
plusX(10, 6); 16
plusX(-4, 4); 0
79. Les fonctions vous permettent d’effectuer une action voulue sans dupliquer votre code
Mais, à quoi ça sert une fonction ?
80. Les fonctions vous permettent d’effectuer une action voulue sans dupliquer votre code
Mais, à quoi ça sert une fonction ?
Verifications
Modifications
Récupération d’informations
Opérations
…
83. c.Les fonctions préexistantes
strlen('hello'); strlen('IIM');5 3
is_int(136); true is_int('136'); false
is_int('txt'); false
PHP propose de nombreuses fonctions.
Vous en trouverez la liste et les détails sur php.net
88. b.POST
POST est presque similaire à GET.
La seule différence est que les valeurs n’apparaissent pas dans l‘URL
POST est également un tableau associatif !
89. b.POST
POST est presque similaire à GET.
La seule différence est que les valeurs n’apparaissent pas dans l‘URL
POST est également un tableau associatif !
Exemple : un commentaire dans un textarea
J’adore votre blog ! <textarea name="comment">
J’adore votre blog !
</textarea>
90. b.POST
POST est presque similaire à GET.
La seule différence est que les valeurs n’apparaissent pas dans l‘URL
POST est également un tableau associatif !
$_POST['comment']; J’adore votre blog !
Exemple : un commentaire dans un textarea
J’adore votre blog ! <textarea name="comment">
J’adore votre blog !
</textarea>
94. c.Include
<div id="content"></div>
<header></header>
<aside></aside>
1
2 3
1
2
3
Fichier index.html
<?php include('header.html') ?>
<div id="content"></div>
<?php include('aside.html'); ?>
Quel intérêt ?
Header, sidebar & footer sont souvent des éléments qui se répètent sur un site.
Cela vous évite de dupliquer du code dans chacune de vos pages html !
97. Servers by Jaime Carrion from The Noun Project
Fencing by Bohdan Burmich from The Noun Project
Stretching by Jessica Lock from The Noun Project
Hammock by Adam Mullin from The Noun Project
Talking by Juan Pablo Bravo from The Noun Project
iPhone Plug by Dan Hetteix from The Noun Project
Switch by Qing Li from The Noun Project
Spring by Adomas Tautkus from The Noun Project
Artwork by Cornelius Danger from The Noun Project
Face by Luboš Volkov from The Noun Project
Swiss Army Knife by TNS from The Noun Project
Robot by Sotirios Papavasilopoulos from The Noun Project
Salt and Pepper by Ryan Beck from The Noun Project
Cut by Nathan Thomson from The Noun Project
Mug by Dmitry Baranovskiy from The Noun Project
Typographies :
Marvel Courier Prime
Lobster 1.4
Iconographie :
Présentation & animations : Pierre Faure
Thank you
The Noun Project
<3
From
http://pierrefaure.fr/