SlideShare une entreprise Scribd logo
<?php
1h30 pour parler de ...
1h30 pour parler de ...
1. Php, Le principe
1h30 pour parler de ...
1. Php, Le principe
2. Les basiques
a. Les variables
b. Afficher un élément
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
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
Php, Le principe
Html, CSS, Javascript
PHP, MySQL
Comment s’execute php ?
http://google.fr
Comment s’execute php ?
http://google.fr
1 Envoi d’une requête au serveur
Comment s’execute php ?
http://google.fr
1 Envoi d’une requête au serveur
2
Le serveur 

interprète le php
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
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
Comment appréhender php ?
Comment appréhender php ?
Sans le savoir, 

vous connaissez déjà php
Comment appréhender php ?
Sans le savoir, 

vous connaissez déjà php
Comment appréhender php ?
Sans le savoir, 

vous connaissez déjà php
Ce que vous ne savez pas, 

c’est comment ça s’écrit !
2.Les basiques
2.Les basiques
a.Les variables
a.Les variables
Nom : iPhone
Année : 2013
Lecteur d’empreinte : Non
Modèle : 5C
a.Les variables
Nom : iPhone
Année : 2013
Lecteur d’empreinte : Non
Modèle : 5C
$name = 'iPhone';
$model = "5C";
$year = 2013;
$fp_reader = false;
a.Les variables
Nom : iPhone
Année : 2013
Lecteur d’empreinte : Non
Modèle : 5C
$name = 'iPhone';
$model = "5C";
$year = 2013;
$fp_reader = false;
' "VS
a.Les variables : syntaxe
a.Les variables : syntaxe
$name = 'iPhone';
$model = "5C";
a.Les variables : syntaxe
$name = 'iPhone';
$model = "5C";
$full_name = "$name $model";
$full_name = $name.' '.$model;
Résultat : iPhone 5C
a.Les variables : syntaxe
$name = 'iPhone';
$model = "5C";
$full_name = "$name $model";
$full_name = $name.' '.$model;
Résultat : iPhone 5C
$full_name = '$name $model';
Résultat : $name $model
a.Les variables : syntaxe
$name = 'iPhone';
$model = "5C";
$full_name = "$name $model";
$full_name = $name.' '.$model;
Résultat : iPhone 5C
$full_name = '$name $model';
Résultat : $name $model
a.Les variables : syntaxe
$name = 'iPhone';
$model = "5C";
$full_name = "$name $model";
$full_name = $name.' '.$model;
Résultat : iPhone 5C
$full_name = '$name $model';
Résultat : $name $model
La concaténation
Exemples :
$full_name = $name.' '.$model;
$name = 'iPhone';
$model = "5C";
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
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
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";
a.Les variables
Nom : iPhone
Année : 2013
Lecteur d’empreinte : Non
$name = 'iPhone';
$model = "5C";
$year = 2013;
Modèle : 5C
$fp_reader = false;
a.Les variables
$year = 2013;
$fp_reader = false;
a.Les variables
$year = 2013;
$fp_reader = false;
Integer nombres entiers positifs et négatifs
a.Les variables
$year = 2013;
$fp_reader = false;
Integer nombres entiers positifs et négatifs
Bool true OU false
b.Afficher un élément
2.Les basiques
b.Afficher un élément
echo 'Hello world !';
echo $hello;
$hello = 'Hello world !';
Résultat : Hello world !
L’échappement
echo 'Salut, moi c'est Pierre !';
L’échappement
echo 'Salut, moi c'est Pierre !';
L’échappement
echo 'Salut, moi c'est Pierre !';
echo 'Salut, moi c'est Pierre !';
3.Les indispensables
3.Les indispensables
a.Les conditions
a.Les conditions : syntaxe
Si tu as 100 ans, 

alors on affiche : Bravo !
if($age == 100){

echo 'Bravo !';

}
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{}
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
a.Les conditions : dans la vie de tous les jours
if, elseif & else
si, sinon si & sinon
Si l’ascenseur …
Si le bouton intérieur du 2éme étage 

est sélectionné : je m’arrête
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
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
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

}
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
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
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 &&
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 &&
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 &&
b.Les boucles
3.Les indispensables
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
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
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
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
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
c.Les tableaux
3.Les indispensables
c.Les tableaux : itératif - syntaxe
Clé Valeur
0 Bonnie
1 Clyde
2 Tom
$f_name = array('Bonnie','Clyde','Tom');
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
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();
c.Les tableaux : associatif - syntaxe
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
c.Les tableaux : associatif - syntaxe
Afficher des valeurs du tableau :
echo $school['Nom']; IIM
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
c.Les tableaux : associatif - syntaxe
Afficher des valeurs du tableau :
echo $school['Nom']; IIM
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
Créer manuellement des lignes :
$school['students'] = 850;
Clé Valeur
students 850
Il existe également la fonction array_push();
c.Les tableaux : affichage rapide
var_dump($school); array(4) {
["Nom"]=> string(3) "IIM" 

["Adresse"]=> string(10) "la Défense" 

["Date"]=> int(1995) 

["Publique"]=> bool(false)
}
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
c.Les tableaux : la boucle foreach
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
c.Les tableaux : la boucle foreach
foreach($school as $key => $val)
{
echo $key.’ : '.$val.'<br>';
}
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
Nom : IIM
Adresse : la Défense
Date : 1995
Publique :
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
c.Les tableaux : la boucle foreach
foreach($school as $key => $val)
{
echo $key.’ : '.$val.'<br>';
}
$school = array(
'Nom' => 'IIM',

'Adresse' => 'la Défense',

'Date' => 1995,

'Publique' => false
);
Nom : IIM
Adresse : la Défense
Date : 1995
Publique :
Clé Valeur
Nom IIM
Adresse la Défense
Date 1995
Publique false
Entre parenthèses : nom du tableau as clé => valeur()
Entre accolades : l’action à exécuter{}
4.Les utiles
4.Les utiles
a.Les fonctions
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
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
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
Les fonctions vous permettent d’effectuer une action voulue sans dupliquer votre code
Mais, à quoi ça sert une fonction ?
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

…
c.Les fonctions préexistantes
PHP propose de nombreuses fonctions. 

Vous en trouverez la liste et les détails sur php.net
c.Les fonctions préexistantes
strlen('hello'); strlen('IIM');5 3
PHP propose de nombreuses fonctions. 

Vous en trouverez la liste et les détails sur php.net
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
4.Les utiles
b.GET & POST
b.GET
http://www.google.com/search?q=php&start=10
b.GET
http://www.google.com/search?q=php&start=10
Clé Valeur
q php
start 10
Au final, c’est un
tableau associatif !
b.GET
http://www.google.com/search?q=php&start=10
Clé Valeur
q php
start 10
Au final, c’est un
tableau associatif !
Pour obtenir la valeur de la recherche on utilise le code :
$_GET['q']; php
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 !
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>
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>
4.Les utiles
c.Include
c.Include
<div id="content"></div>
<header></header>
<aside></aside>
1
2 3
1
2
3
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'); ?>
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 !
?>
10 Minutes
DE PAUSE
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/
Color scheme

Contenu connexe

PDF
Kiss PageObjects [01-2017]
Iakiv Kramarenko
 
PDF
Shell-Scripting-1.pdf
aznabi
 
PPSX
Fondamentaux java
Ines Ouaz
 
PPTX
Laravel 9 comprendre les fondamentaux.
Valdy Ngouabira
 
PPTX
Spring test mvc 발표자료
수홍 이
 
PPTX
Hibernate jpa
Lhouceine OUHAMZA
 
DOCX
Mini projet individuel php
Khadim Mbacké
 
PPTX
Introduction à Laravel
Abdoulaye Dieng
 
Kiss PageObjects [01-2017]
Iakiv Kramarenko
 
Shell-Scripting-1.pdf
aznabi
 
Fondamentaux java
Ines Ouaz
 
Laravel 9 comprendre les fondamentaux.
Valdy Ngouabira
 
Spring test mvc 발표자료
수홍 이
 
Hibernate jpa
Lhouceine OUHAMZA
 
Mini projet individuel php
Khadim Mbacké
 
Introduction à Laravel
Abdoulaye Dieng
 

Tendances (20)

PPT
Java Threads and Concurrency
Sunil OS
 
PPT
Formation jpa-hibernate-spring-data
Lhouceine OUHAMZA
 
PDF
JSP 프로그래밍 #03 서블릿
Myungjin Lee
 
PDF
Cours bd-access-2007
Honoris Haba
 
PDF
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
William Liang
 
PDF
Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm
 
PPTX
An Overview on Nuxt.js
Squash Apps Pvt Ltd
 
PPTX
Chap1lla génèricité.pptx
Sana REFAI
 
PPT
Php cours
funinformatique
 
PDF
Chapitre3 2013 POO
Seif Eddine Attia
 
PDF
Jsf 110530152515-phpapp01
Eric Bourdet
 
PDF
Spring Boot 소개
beom kyun choi
 
PPTX
Introduction JavaEE
Mourad HASSINI
 
PPTX
Vue js for beginner
Chandrasekar G
 
PDF
Bases de PHP - Partie 1
Régis Lutter
 
PDF
Blazor web apps
Rajesh Kolla
 
DOCX
Practica utilizacion de beans en jsp
Boris Salleg
 
PPT
Vue.js Getting Started
Murat Doğan
 
PPTX
Android Training (Storing data using SQLite)
Khaled Anaqwa
 
DOC
Creating a Simple PHP and MySQL-Based Login System
Azharul Haque Shohan
 
Java Threads and Concurrency
Sunil OS
 
Formation jpa-hibernate-spring-data
Lhouceine OUHAMZA
 
JSP 프로그래밍 #03 서블릿
Myungjin Lee
 
Cours bd-access-2007
Honoris Haba
 
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
William Liang
 
Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm
 
An Overview on Nuxt.js
Squash Apps Pvt Ltd
 
Chap1lla génèricité.pptx
Sana REFAI
 
Php cours
funinformatique
 
Chapitre3 2013 POO
Seif Eddine Attia
 
Jsf 110530152515-phpapp01
Eric Bourdet
 
Spring Boot 소개
beom kyun choi
 
Introduction JavaEE
Mourad HASSINI
 
Vue js for beginner
Chandrasekar G
 
Bases de PHP - Partie 1
Régis Lutter
 
Blazor web apps
Rajesh Kolla
 
Practica utilizacion de beans en jsp
Boris Salleg
 
Vue.js Getting Started
Murat Doğan
 
Android Training (Storing data using SQLite)
Khaled Anaqwa
 
Creating a Simple PHP and MySQL-Based Login System
Azharul Haque Shohan
 
Publicité

En vedette (15)

PDF
Comment apprendre a coder
Yannick Quenec'hdu
 
PDF
Php 2 - Approfondissement MySQL, PDO et MVC
Pierre Faure
 
PDF
Top 10 des meilleurs sites pour apprendre à coder - La fabrique du net
La-Fabrique-du-Net
 
PDF
Programmation orientée objet en PHP 5
Kristen Le Liboux
 
PDF
Un exemple élémentaire d'application MVC en PHP
Kristen Le Liboux
 
PDF
PHP MVC Tutorial
Yang Bruce
 
PDF
Notions de base de JavaScript
Kristen Le Liboux
 
PDF
PHP & MVC
Chris Weldon
 
PDF
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
PDF
What's next for blockchain ? Matinée MEDEF du 27 juin 2016
Vidal Chriqui
 
PPT
Developing an ASP.NET Web Application
Rishi Kothari
 
PDF
Introduction au Bitcoin
HETIC
 
PDF
Concevez votre-site-web-avec-php-et-mysql
Karima Rakima
 
PDF
Blockchains & Smart Networks: Automating Workflows and Introducing Logic to t...
Micah Winkelspecht
 
Comment apprendre a coder
Yannick Quenec'hdu
 
Php 2 - Approfondissement MySQL, PDO et MVC
Pierre Faure
 
Top 10 des meilleurs sites pour apprendre à coder - La fabrique du net
La-Fabrique-du-Net
 
Programmation orientée objet en PHP 5
Kristen Le Liboux
 
Un exemple élémentaire d'application MVC en PHP
Kristen Le Liboux
 
PHP MVC Tutorial
Yang Bruce
 
Notions de base de JavaScript
Kristen Le Liboux
 
PHP & MVC
Chris Weldon
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
What's next for blockchain ? Matinée MEDEF du 27 juin 2016
Vidal Chriqui
 
Developing an ASP.NET Web Application
Rishi Kothari
 
Introduction au Bitcoin
HETIC
 
Concevez votre-site-web-avec-php-et-mysql
Karima Rakima
 
Blockchains & Smart Networks: Automating Workflows and Introducing Logic to t...
Micah Winkelspecht
 
Publicité

Similaire à PHP 1 - Apprendre les bases (20)

PPTX
Initiation au php
StrasWeb
 
PPTX
Initiation au php
Cédric Leclinche
 
PDF
coursphp-230411142526-784b67e9.pdf
RihabBENLAMINE
 
PPTX
COURS PHP.pptx
tokikun
 
PPT
.php1 : les fondamentaux du PHP
Abdoulaye Dieng
 
PPT
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Marouan OMEZZINE
 
PPTX
PHP.pptx
GroupeExcelMarrakech
 
PDF
Cours php bac info
borhen boukthir
 
PDF
Développement Web- PHP (partie I).pdf
YasushiTsubakik
 
PDF
Cours php
Narûtö Bàl'Sèm
 
PDF
Résumé Complet : Les Fondamentaux du PHP et Intégration avec MySQL.pdf
Pointer @Info
 
PPTX
La première partie de la présentation PHP
Club Scientifique de l'ESI - CSE
 
PPT
Php4 Mysql
HamdiBaklouti
 
PDF
PROGRAMMES FASCICULE DE PHP IDA2 (1).pdf
DramaneTraor3
 
PPT
Cours php
csskaled
 
PDF
Cours php
Yassine Badri
 
PPTX
Php1
Kadar Abdillahi
 
PPTX
Loucif Redha développement d'applications web - php - my sql
Redha LOUCIF
 
PDF
Php seance1
Imen Arfaoui
 
PDF
Cours php & Mysql - 1ére partie
kadzaki
 
Initiation au php
StrasWeb
 
Initiation au php
Cédric Leclinche
 
coursphp-230411142526-784b67e9.pdf
RihabBENLAMINE
 
COURS PHP.pptx
tokikun
 
.php1 : les fondamentaux du PHP
Abdoulaye Dieng
 
Introduction au langage PHP (1ere partie) élaborée par Marouan OMEZZINE
Marouan OMEZZINE
 
Cours php bac info
borhen boukthir
 
Développement Web- PHP (partie I).pdf
YasushiTsubakik
 
Résumé Complet : Les Fondamentaux du PHP et Intégration avec MySQL.pdf
Pointer @Info
 
La première partie de la présentation PHP
Club Scientifique de l'ESI - CSE
 
Php4 Mysql
HamdiBaklouti
 
PROGRAMMES FASCICULE DE PHP IDA2 (1).pdf
DramaneTraor3
 
Cours php
csskaled
 
Cours php
Yassine Badri
 
Loucif Redha développement d'applications web - php - my sql
Redha LOUCIF
 
Php seance1
Imen Arfaoui
 
Cours php & Mysql - 1ére partie
kadzaki
 

Dernier (12)

PPTX
Soutanece Stage Pfe Développement Web et Multimédia
YassineMyara
 
PDF
Communication entre les conteneurs docker dans diff réseaux
SOUFIANE MOUHTARAM
 
PDF
Circuit Breaker pattern avec Resilience4j
SOUFIANE MOUHTARAM
 
PDF
Katalog VRF Clivet vrf technology(1).pdf
MehfoozAli19
 
PDF
Généralités sur balisage (Tagging) en git
SOUFIANE MOUHTARAM
 
PDF
Présentation UCOPIA et ses fonctionnalités
ZakariaRAHOUI2
 
PDF
CHAPITRE 5_Déplacement des données DBA.pdf
houcemswissi1
 
PDF
Rapport de Stage Fin D’étude - Développement Web et Multimédia
YassineMyara
 
PDF
Google Remote Procedure Call Web Service
SOUFIANE MOUHTARAM
 
PPTX
voip architecture et installation de solution voip
samiraelazouzy
 
PDF
linkyfi presentation et ses fonctionnalité
ZakariaRAHOUI2
 
PDF
CHAPITRE1_Architecture du Serveur Oracle.pdf
houcemswissi1
 
Soutanece Stage Pfe Développement Web et Multimédia
YassineMyara
 
Communication entre les conteneurs docker dans diff réseaux
SOUFIANE MOUHTARAM
 
Circuit Breaker pattern avec Resilience4j
SOUFIANE MOUHTARAM
 
Katalog VRF Clivet vrf technology(1).pdf
MehfoozAli19
 
Généralités sur balisage (Tagging) en git
SOUFIANE MOUHTARAM
 
Présentation UCOPIA et ses fonctionnalités
ZakariaRAHOUI2
 
CHAPITRE 5_Déplacement des données DBA.pdf
houcemswissi1
 
Rapport de Stage Fin D’étude - Développement Web et Multimédia
YassineMyara
 
Google Remote Procedure Call Web Service
SOUFIANE MOUHTARAM
 
voip architecture et installation de solution voip
samiraelazouzy
 
linkyfi presentation et ses fonctionnalité
ZakariaRAHOUI2
 
CHAPITRE1_Architecture du Serveur Oracle.pdf
houcemswissi1
 

PHP 1 - Apprendre les bases

  • 3. 1h30 pour parler de ... 1. Php, Le principe
  • 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
  • 7. Php, Le principe Html, CSS, Javascript
  • 9. Comment s’execute php ? http://google.fr
  • 10. Comment s’execute php ? http://google.fr 1 Envoi d’une requête au serveur
  • 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
  • 15. Comment appréhender php ? Sans le savoir, 
 vous connaissez déjà php
  • 16. Comment appréhender php ? Sans le savoir, 
 vous connaissez déjà php
  • 17. Comment appréhender php ? Sans le savoir, 
 vous connaissez déjà php Ce que vous ne savez pas, 
 c’est comment ça s’écrit !
  • 20. a.Les variables Nom : iPhone Année : 2013 Lecteur d’empreinte : Non Modèle : 5C
  • 21. a.Les variables Nom : iPhone Année : 2013 Lecteur d’empreinte : Non Modèle : 5C $name = 'iPhone'; $model = "5C"; $year = 2013; $fp_reader = false;
  • 22. a.Les variables Nom : iPhone Année : 2013 Lecteur d’empreinte : Non Modèle : 5C $name = 'iPhone'; $model = "5C"; $year = 2013; $fp_reader = false;
  • 24. a.Les variables : syntaxe $name = 'iPhone'; $model = "5C";
  • 25. a.Les variables : syntaxe $name = 'iPhone'; $model = "5C"; $full_name = "$name $model"; $full_name = $name.' '.$model; Résultat : iPhone 5C
  • 26. a.Les variables : syntaxe $name = 'iPhone'; $model = "5C"; $full_name = "$name $model"; $full_name = $name.' '.$model; Résultat : iPhone 5C $full_name = '$name $model'; Résultat : $name $model
  • 27. a.Les variables : syntaxe $name = 'iPhone'; $model = "5C"; $full_name = "$name $model"; $full_name = $name.' '.$model; Résultat : iPhone 5C $full_name = '$name $model'; Résultat : $name $model
  • 28. a.Les variables : syntaxe $name = 'iPhone'; $model = "5C"; $full_name = "$name $model"; $full_name = $name.' '.$model; Résultat : iPhone 5C $full_name = '$name $model'; Résultat : $name $model
  • 29. La concaténation Exemples : $full_name = $name.' '.$model; $name = 'iPhone'; $model = "5C";
  • 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";
  • 33. a.Les variables Nom : iPhone Année : 2013 Lecteur d’empreinte : Non $name = 'iPhone'; $model = "5C"; $year = 2013; Modèle : 5C $fp_reader = false;
  • 34. a.Les variables $year = 2013; $fp_reader = false;
  • 35. a.Les variables $year = 2013; $fp_reader = false; Integer nombres entiers positifs et négatifs
  • 36. a.Les variables $year = 2013; $fp_reader = false; Integer nombres entiers positifs et négatifs Bool true OU false
  • 38. b.Afficher un élément echo 'Hello world !'; echo $hello; $hello = 'Hello world !'; Résultat : Hello world !
  • 41. L’échappement echo 'Salut, moi c'est Pierre !'; echo 'Salut, moi c'est Pierre !';
  • 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
  • 64. c.Les tableaux : itératif - syntaxe Clé Valeur 0 Bonnie 1 Clyde 2 Tom $f_name = array('Bonnie','Clyde','Tom');
  • 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();
  • 67. c.Les tableaux : associatif - syntaxe Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false );
  • 68. c.Les tableaux : associatif - syntaxe Afficher des valeurs du tableau : echo $school['Nom']; IIM Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false );
  • 69. c.Les tableaux : associatif - syntaxe Afficher des valeurs du tableau : echo $school['Nom']; IIM Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false ); Créer manuellement des lignes : $school['students'] = 850; Clé Valeur students 850 Il existe également la fonction array_push();
  • 70. c.Les tableaux : affichage rapide var_dump($school); array(4) { ["Nom"]=> string(3) "IIM" 
 ["Adresse"]=> string(10) "la Défense" 
 ["Date"]=> int(1995) 
 ["Publique"]=> bool(false) } Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false );
  • 71. c.Les tableaux : la boucle foreach $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false ); Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false
  • 72. c.Les tableaux : la boucle foreach foreach($school as $key => $val) { echo $key.’ : '.$val.'<br>'; } $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false ); Nom : IIM Adresse : la Défense Date : 1995 Publique : Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false
  • 73. c.Les tableaux : la boucle foreach foreach($school as $key => $val) { echo $key.’ : '.$val.'<br>'; } $school = array( 'Nom' => 'IIM',
 'Adresse' => 'la Défense',
 'Date' => 1995,
 'Publique' => false ); Nom : IIM Adresse : la Défense Date : 1995 Publique : Clé Valeur Nom IIM Adresse la Défense Date 1995 Publique false Entre parenthèses : nom du tableau as clé => valeur() Entre accolades : l’action à exécuter{}
  • 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
 …
  • 81. c.Les fonctions préexistantes PHP propose de nombreuses fonctions. 
 Vous en trouverez la liste et les détails sur php.net
  • 82. c.Les fonctions préexistantes strlen('hello'); strlen('IIM');5 3 PHP propose de nombreuses fonctions. 
 Vous en trouverez la liste et les détails sur php.net
  • 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
  • 87. b.GET http://www.google.com/search?q=php&start=10 Clé Valeur q php start 10 Au final, c’est un tableau associatif ! Pour obtenir la valeur de la recherche on utilise le code : $_GET['q']; php
  • 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>
  • 93. 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'); ?>
  • 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 !
  • 95. ?>
  • 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/