SlideShare une entreprise Scribd logo
1  sur  35
Introduction
SITE WEB STATIQUE ET SITE WEB DYNAMIQUE
Les sites web
Tout le monde connait ce que c’est.
Ce que tout le monde ne sait pas : il en existe 2 types
◦ Les sites web dits « statiques »
◦ Les sites web dits « dynamiques »
Les sites web statiques
Une page web statique est une page web dont le contenu ne varie pas en fonction des
caractéristiques de la demande.
Leur contenu est fixe et ne peut être mis à jour automatiquement : il faut que le propriétaire du
site (le webmaster) modifie le code source pour y ajouter des nouveautés
Sont généralement réalisé avec seulement HTML et CSS
Les sites web dynamiques
Leurs pages sont générées à la demande et leur contenu varie en fonction des
caractéristiques de celle-ci (heure, adresse IP de l'ordinateur du demandeur, formulaire
rempli par le demandeur, etc.) qui ne sont connues qu'au moment de sa consultation.
Sont réalisé en utilisant d’autres langages en plus de HTML et CSS :
PHP, MySQL, ASP.net, Python, JavaScript … etc.
Le langage PHP
PHP tien pour « PHP Hypertext Preprocessor »
Le langage PHP fut créé en 1994 par Rasmus Lerdorf pour son site web. C'était à l'origine une
bibliothèque logicielle en Perl dont il se servait pour conserver une trace des visiteurs qui
venaient consulter son CV
En 2002, PHP est utilisé par plus de 8 millions de sites Web à travers le monde, en 2007 par plus
de 20 millions et en 2013 par plus de 244 millions
PHP est un langage impératif orienté objet.
Très influencé par les langages : Perl, C/C++ et Java
Premiers pas : la
syntaxe
STRUCTURE D’UN PROGRAMME, LES VARIABLES ET LES
OPÉRATEURS
Hello World !!
En PHP, le programme « Hello world » se présente sous la forme suivante :
Note : le programme est enregistré dans un fichier source avec l’extension : .php
<? Php
echo ‘ Hello World!! ’ ;
?>
Hello World !!
Un programme PHP se présente sous la forme suivante:
<?php (Votre code) ?>
La balise <?php ?> fait office de « Début » et de « Fin de programme »
La balise <?php ?> peut être placé au milieu d’un code HTML : rien n’empêche
d’avoir :
// Code HTML
<? Php /*(Code PHP) */ ?>
// Code HTML
<? Php /*(Code PHP) */ ?>
// Code HTML
…
Les variables
Pour déclarer une variable : $nom_variable ;
Une variable n’as pas besoin d’être déclarer à l’avance
En PHP, on n’a pas besoin de préciser le type d’une variable. Il est définie par la
valeur qui lui est affectée. Exemple :
Ceci est possible en PHP. La variable va
prendre successivement les types : double,
string et integer.
<? Php
$variable = 3. ;
echo gettype($variable) . '<br/>';
$variable = ‘Chaine';
echo gettype($variable) . '<br/>';
$variable = 2 ;
echo gettype($variable) . '<br/>';
?>
Les types de variables
Les types de variables en PHP sont :
integer, double, string , boolean, array
Pour connaître le type d’une variable :
gettype($variable)
Pour changer le type d’une variable :
settype($variable , type); // type doit être passé en chaine de caractères
Les opérateurs
L’opérateur d’affectation : =
Les opérateurs arithmétiques
◦ Addition : +
◦ Soustraction : -
◦ Multiplication : *
◦ Division : /
◦ Modulo : %
◦ Incrément / Décrément : ++ et --
Les opérateurs compactes : += , -= , *= , /= , %=
Exemple : ($var += 3) signifie ($var = $var + 3)
Les opérateurs (2)
Les opérateurs de comparaison
◦ Egalité : ==
◦ Infériorité stricte : <
◦ Supériorité stricte : >
◦ Inférieur ou égal : <=
◦ Supérieur ou égal : >=
◦ Différent de : !=
Les opérateurs logiques
◦ ET logique : && ou AND
◦ OU logique : || ou OR
◦ Négation (NOT) : !
◦ OU Exclusif : XOR
Les opérateurs (3)
L’ opérateur ternaire :
[Condition] ? [Expression effectuée si VRAI] : [Expression effectuée si FAUX]
Exemple:
◦ ($a < $b) ? $a = 0 : $b = $a ;
◦ $var = ($a < $b) ? $a : $b ;
◦ …etc.
Les structures de
programme
BOUCLES ET COMPAGNIE
Les structures de programme
Mis à part une structure, PHP reste très similaire au langage C pour ce qui
est des structures de programme qu’il utilise : if … else, while, for et
switch.
Structures de choix avec IF
<? php
if ( /* condition 1 */ )
{
// Bloc d’instructions
}
elseif ( /* condition 2 */ )
{
// Bloc d’instructions
}
..
..
elseif ( /* condition n */ )
{
// Bloc d’instructions
}
else // sinon
{
// Bloc d’instructions
}
?>
Structures de choix avec Switch …
Case
<? php
switch ( $variable )
{
case valeur_1 : // Bloc d’instructions;
break ;
case valeur_2 : // Bloc d’instructions;
break ;
..
..
..
case valeur_n : // Bloc d’instructions;
break ;
default : // Bloc d’instructions;
break ;
}
?>
Structure de boucle avec While
<? php
while ( /* condition */ )
{
// Bloc d’instructions ;
}
?>
Structure de boucle avec For
<? php
for ( $var = 0 ; $var<n ; $var ++ )
{
// Bloc d’instructions ;
}
?>
Une nouvelle For : la boucle Foreach
Elle se présente comme indiquer ci-contre ( la forme la
plus simple)
Généralement utilisée pour le parcours de tableaux
Signifie littéralement :
« Pour tout élément dans le tableau »
La variable $element prend , une à une, toute les
valeurs des éléments de $tableau jusqu’à le parcourir
complètement
<? php
foreach ( $tableau as $element )
{
// Bloc d’instructions ;
}
?>
Les instructions de contrôle : Break et
Continue
Break : permet de sortir d’un block d’instructions
Continue : permet, dans une structure de boucle, de
sauter l’itération actuelle et de passer directement à
la suivante
Exemple:
Le programme ci-contre affiche tous les nombres impairs
inférieurs à 10
<? php
for ($i = 0 ; $i < 10 ; $i ++ )
{
if ( ! ( $i % 2) ) continue;
echo $i . ‘’ , ‛ ;
}
?>
Les tableaux en PHP
LE TITRE EST ASSEZ CLAIRE POUR SE PASSER DE SOUS-
TITRES :P
Les tableaux en php
En php, il existe 2 types de tableaux :
◦ Les tableaux « classiques » :
ce sont les tableaux dont on a l’habitude. Ils peuvent être à une ou plusieurs
dimensions.
◦ Les tableaux associatifs :
ce sont des tableaux qui au lieu d’avoir des indices numériques ont des indices de
type chaine de caractères. On parle alors de « clé » (une clé doit être unique)
Les tableaux « classiques »
Déclaration : plusieurs manières de faire
◦ $tableau = array($var , valeur , …);
◦ $tableau[] = valeur ;
◦ $matrice = array( array() , array() );
◦ $matrice[][] = valeur;
◦ …etc.
Exemple:
<? php
$tableau = array();
$tableau[ 0 ] = 1 ;
$tableau[ 1 ] = 3 ;
$tableau[ 2 ] = 22 ;
$tableau[] = 72 ;
$tableau[] = 1.85 ;
?>
Cette instruction permet
d’ajouter une valeur à la
fin du tableau
Les tableaux associatifs
Déclaration :
N’est pas différente de celle des tableaux « classiques ». Il suffit seulement d’utiliser des chaines
de caractères au lieu des indices numériques.
Exemple:
Remarque :
Comme le montre le tableaux, rien n’empêche
d’avoir des valeurs de types différents dans un tableau
<? php
$tableau = array();
$tableau[‚Nom‛] = ‚Amarouche‛ ;
$tableau[‚Prenom‛] = ‚Youcef‛ ;
$tableau[‚Age‛] = 22 ;
$tableau[‚Caract‛][‚poid‛] = 72 ;
$tableau[‚Caract‛][‚taille‛] = 1.85 ;
?>
Operations sur les tableaux
associatifs
<? php
array_key_exists ('cle', $array); // pour vérifier si une clé existe dans le tableau
in_array ($valeur, $array); // pour vérifier si une valeur existe dans le tableau
array_search ($valeur, $array); // pour récupérer la clé d’une valeur dans le tableau
?>
Les chaines de
caractères
Opérations sur les chaines de
caratères
La concaténation
◦ Il existe un opérateur pour cela. L’opérateur : .
◦ Exemple : $chaine = ‚chaine‛ . $var // var peut être du type int, double ou
string
Longueur d’une chaine de caractères : strlen($chaine);
Accèder à un caractère : $chaine{n}
Extraire une sous-chaine : substr($chaine , $deb, $fin);
…etc.
Les fonctions en PHP
La fonction echo
Sert à afficher du texte sur l’écran. Dans le cas d’une page web, le texte sera afficher sur
la page.
Contrairement aux autres fonctions, elle ne nécessite pas de parenthèses
Exemple:
◦ echo $variable;
◦ echo ‚chaine‛;
◦ echo ‚<a href = ‘#’>lien</a>‛;
◦ …etc.
Déclaration et utilisation
<? php
function Mafonction(/*paramètres*/)
{
// code de la fonction;
}
..
..
Mafonction(/*paramètres*/);
?>
<? php
function Mafonction(/*paramètres*/)
{
// code de la fonction;
return $valeur ;
}
..
..
$var = Mafonction(/*paramètres*/);
?>
Utilisation avancée
<? php
function Mafonction($par1 , $par2 = valeur)
{
// code de la fonction;
}
?>
<? php
require($path_vers_fonction);
// $path_vers_fonction est le chemin vers le
// fichier contenant la fonction externe
?>
Fonction avec paramètre optionnel Utilisation d’une fonction externe
La fonction include()
Cette fonction permet d’inclure un bout de code (externe) dans le code source php.
Exemple:
Le code de l’exemple produira une page similaire à celle obtenue si l’on devait copier le contenu
du fichier indiqué en paramètre et le coller dans notre code source à la place de include
<? php
include($path_vers_fichier);
// $path_vers_fichier est le chemin vers le
// fichier contenant le code à inclure
?>
Autres fonctionnalités
LES COOKIES, LES SESSIONS, LA POO …ETC

Contenu connexe

Tendances

Trucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLTrucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLDamien Seguy
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScriptKristen Le Liboux
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHPAbdoulaye Dieng
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDOAbdoulaye Dieng
 
Php mysql cours
Php mysql coursPhp mysql cours
Php mysql courszan
 
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINEIntroduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINEMarouan OMEZZINE
 
Programmation orientée objet en PHP 5
Programmation orientée objet en PHP 5Programmation orientée objet en PHP 5
Programmation orientée objet en PHP 5Kristen Le Liboux
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantHugo Hamon
 
Php 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPhp 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPierre Faure
 
cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++Abdoulaye Dieng
 

Tendances (17)

Trucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLTrucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQL
 
Cours php
Cours phpCours php
Cours php
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScript
 
PHP &amp; MySQL
PHP &amp; MySQLPHP &amp; MySQL
PHP &amp; MySQL
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDO
 
Php mysql cours
Php mysql coursPhp mysql cours
Php mysql cours
 
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINEIntroduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE
 
Php cours
Php coursPhp cours
Php cours
 
Programmation orientée objet en PHP 5
Programmation orientée objet en PHP 5Programmation orientée objet en PHP 5
Programmation orientée objet en PHP 5
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
 
Formation python 3
Formation python 3Formation python 3
Formation python 3
 
Php 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPhp 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVC
 
Cours javascript v1
Cours javascript v1Cours javascript v1
Cours javascript v1
 
Les structures de données PHP5
Les structures de données PHP5Les structures de données PHP5
Les structures de données PHP5
 
Structure de données en PHP
Structure de données en PHPStructure de données en PHP
Structure de données en PHP
 
cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++
 

Similaire à La première partie de la présentation PHP

Developpement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdfDeveloppement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdfrachidimstapha
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.pptAmineReal
 
cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024YounesOuladSayad1
 
Cours php -partie 1.pdf
Cours php -partie 1.pdfCours php -partie 1.pdf
Cours php -partie 1.pdfssuserc46a93
 
Cours Programmation web en PHP Cours Programmation web en PHP
Cours Programmation web en PHP Cours Programmation web en PHPCours Programmation web en PHP Cours Programmation web en PHP
Cours Programmation web en PHP Cours Programmation web en PHPBassim ELKHATTABY
 
Développement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdfDéveloppement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdfYasushiTsubakik
 
Php_Mysql.pdf
Php_Mysql.pdfPhp_Mysql.pdf
Php_Mysql.pdfETTAMRY
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academySoufiane SAHMI
 
Les principes de base de PHP
 Les principes de base de PHP  Les principes de base de PHP
Les principes de base de PHP EL JAOUARI Ahmed
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdfRihabBENLAMINE
 
PHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben AlayaPHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben AlayaMahdi Ben Alaya
 
Initiation au php
Initiation au phpInitiation au php
Initiation au phpStrasWeb
 

Similaire à La première partie de la présentation PHP (20)

Developpement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdfDeveloppement web dynamique_Base de donnees.pdf
Developpement web dynamique_Base de donnees.pdf
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.ppt
 
Php4 Mysql
Php4 MysqlPhp4 Mysql
Php4 Mysql
 
PHP.pptx
PHP.pptxPHP.pptx
PHP.pptx
 
cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024
 
Cours php -partie 1.pdf
Cours php -partie 1.pdfCours php -partie 1.pdf
Cours php -partie 1.pdf
 
Cours Programmation web en PHP Cours Programmation web en PHP
Cours Programmation web en PHP Cours Programmation web en PHPCours Programmation web en PHP Cours Programmation web en PHP
Cours Programmation web en PHP Cours Programmation web en PHP
 
Développement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdfDéveloppement Web- PHP (partie I).pdf
Développement Web- PHP (partie I).pdf
 
Php_Mysql.pdf
Php_Mysql.pdfPhp_Mysql.pdf
Php_Mysql.pdf
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academy
 
Initiation au langage PHP
Initiation au langage PHPInitiation au langage PHP
Initiation au langage PHP
 
Les principes de base de PHP
 Les principes de base de PHP  Les principes de base de PHP
Les principes de base de PHP
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
 
Php seance1
Php seance1Php seance1
Php seance1
 
PHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben AlayaPHP (Partie I) Par Mahdi Ben Alaya
PHP (Partie I) Par Mahdi Ben Alaya
 
PHP mysql Xml.pdf
PHP mysql Xml.pdfPHP mysql Xml.pdf
PHP mysql Xml.pdf
 
PHP mysql Xml.doc
PHP mysql Xml.docPHP mysql Xml.doc
PHP mysql Xml.doc
 
Syntaxe du langage PHP
Syntaxe du langage PHPSyntaxe du langage PHP
Syntaxe du langage PHP
 
Initiation au php
Initiation au phpInitiation au php
Initiation au php
 
Initiation au php
Initiation au phpInitiation au php
Initiation au php
 

Plus de Club Scientifique de l'ESI - CSE

"Introduction aux exploits et à la faille BufferOverflow"
"Introduction aux exploits et à la faille BufferOverflow""Introduction aux exploits et à la faille BufferOverflow"
"Introduction aux exploits et à la faille BufferOverflow"Club Scientifique de l'ESI - CSE
 
Conférence Virtualisation - Day 1 : Introduction à la vitualisation
Conférence Virtualisation - Day 1 : Introduction à la vitualisationConférence Virtualisation - Day 1 : Introduction à la vitualisation
Conférence Virtualisation - Day 1 : Introduction à la vitualisationClub Scientifique de l'ESI - CSE
 

Plus de Club Scientifique de l'ESI - CSE (20)

CSE Welcome Day 2015
CSE Welcome Day 2015CSE Welcome Day 2015
CSE Welcome Day 2015
 
Gazette de l'ESI #5
Gazette de l'ESI #5Gazette de l'ESI #5
Gazette de l'ESI #5
 
Atelier 1 Introduction aux Réseaux Informatiques
Atelier 1 Introduction aux Réseaux InformatiquesAtelier 1 Introduction aux Réseaux Informatiques
Atelier 1 Introduction aux Réseaux Informatiques
 
Gazette De L'ESI - N°3
Gazette De L'ESI - N°3Gazette De L'ESI - N°3
Gazette De L'ESI - N°3
 
Introduction à unity 3D
Introduction à unity 3DIntroduction à unity 3D
Introduction à unity 3D
 
Jeux video
Jeux videoJeux video
Jeux video
 
"Introduction aux exploits et à la faille BufferOverflow"
"Introduction aux exploits et à la faille BufferOverflow""Introduction aux exploits et à la faille BufferOverflow"
"Introduction aux exploits et à la faille BufferOverflow"
 
La 2ème partie de la présentation PHP
La 2ème partie de la présentation PHPLa 2ème partie de la présentation PHP
La 2ème partie de la présentation PHP
 
Gazette de l'ESI - Edition 2, Décembre 2013
Gazette de l'ESI - Edition 2, Décembre 2013Gazette de l'ESI - Edition 2, Décembre 2013
Gazette de l'ESI - Edition 2, Décembre 2013
 
Présentation MotivationDay
Présentation MotivationDayPrésentation MotivationDay
Présentation MotivationDay
 
Conférence Virtualisation - Day 1 : Introduction à la vitualisation
Conférence Virtualisation - Day 1 : Introduction à la vitualisationConférence Virtualisation - Day 1 : Introduction à la vitualisation
Conférence Virtualisation - Day 1 : Introduction à la vitualisation
 
Section Developpement Mobile Atelier #1
Section Developpement Mobile Atelier #1Section Developpement Mobile Atelier #1
Section Developpement Mobile Atelier #1
 
Gazette de l'ESI - Edition 1, Novembre 2013.
Gazette de l'ESI - Edition 1, Novembre 2013.Gazette de l'ESI - Edition 1, Novembre 2013.
Gazette de l'ESI - Edition 1, Novembre 2013.
 
Atelier Section Sécurité
Atelier Section SécuritéAtelier Section Sécurité
Atelier Section Sécurité
 
Théorie d’esthétique - UX Day
Théorie d’esthétique - UX DayThéorie d’esthétique - UX Day
Théorie d’esthétique - UX Day
 
Natural User Interface - UX Day
Natural User Interface - UX DayNatural User Interface - UX Day
Natural User Interface - UX Day
 
Apprenez le jQuery
Apprenez le jQueryApprenez le jQuery
Apprenez le jQuery
 
Faire un scan du réseau avec NMAP
Faire un scan du réseau avec NMAPFaire un scan du réseau avec NMAP
Faire un scan du réseau avec NMAP
 
Neutraliser un Virus/Worm ‘RECYCLER’ manuellement
Neutraliser un Virus/Worm ‘RECYCLER’ manuellementNeutraliser un Virus/Worm ‘RECYCLER’ manuellement
Neutraliser un Virus/Worm ‘RECYCLER’ manuellement
 
Casser un mot de passe Windows
Casser un mot de passe WindowsCasser un mot de passe Windows
Casser un mot de passe Windows
 

La première partie de la présentation PHP

  • 1.
  • 2. Introduction SITE WEB STATIQUE ET SITE WEB DYNAMIQUE
  • 3. Les sites web Tout le monde connait ce que c’est. Ce que tout le monde ne sait pas : il en existe 2 types ◦ Les sites web dits « statiques » ◦ Les sites web dits « dynamiques »
  • 4. Les sites web statiques Une page web statique est une page web dont le contenu ne varie pas en fonction des caractéristiques de la demande. Leur contenu est fixe et ne peut être mis à jour automatiquement : il faut que le propriétaire du site (le webmaster) modifie le code source pour y ajouter des nouveautés Sont généralement réalisé avec seulement HTML et CSS
  • 5. Les sites web dynamiques Leurs pages sont générées à la demande et leur contenu varie en fonction des caractéristiques de celle-ci (heure, adresse IP de l'ordinateur du demandeur, formulaire rempli par le demandeur, etc.) qui ne sont connues qu'au moment de sa consultation. Sont réalisé en utilisant d’autres langages en plus de HTML et CSS : PHP, MySQL, ASP.net, Python, JavaScript … etc.
  • 6. Le langage PHP PHP tien pour « PHP Hypertext Preprocessor » Le langage PHP fut créé en 1994 par Rasmus Lerdorf pour son site web. C'était à l'origine une bibliothèque logicielle en Perl dont il se servait pour conserver une trace des visiteurs qui venaient consulter son CV En 2002, PHP est utilisé par plus de 8 millions de sites Web à travers le monde, en 2007 par plus de 20 millions et en 2013 par plus de 244 millions PHP est un langage impératif orienté objet. Très influencé par les langages : Perl, C/C++ et Java
  • 7. Premiers pas : la syntaxe STRUCTURE D’UN PROGRAMME, LES VARIABLES ET LES OPÉRATEURS
  • 8. Hello World !! En PHP, le programme « Hello world » se présente sous la forme suivante : Note : le programme est enregistré dans un fichier source avec l’extension : .php <? Php echo ‘ Hello World!! ’ ; ?>
  • 9. Hello World !! Un programme PHP se présente sous la forme suivante: <?php (Votre code) ?> La balise <?php ?> fait office de « Début » et de « Fin de programme » La balise <?php ?> peut être placé au milieu d’un code HTML : rien n’empêche d’avoir : // Code HTML <? Php /*(Code PHP) */ ?> // Code HTML <? Php /*(Code PHP) */ ?> // Code HTML …
  • 10. Les variables Pour déclarer une variable : $nom_variable ; Une variable n’as pas besoin d’être déclarer à l’avance En PHP, on n’a pas besoin de préciser le type d’une variable. Il est définie par la valeur qui lui est affectée. Exemple : Ceci est possible en PHP. La variable va prendre successivement les types : double, string et integer. <? Php $variable = 3. ; echo gettype($variable) . '<br/>'; $variable = ‘Chaine'; echo gettype($variable) . '<br/>'; $variable = 2 ; echo gettype($variable) . '<br/>'; ?>
  • 11. Les types de variables Les types de variables en PHP sont : integer, double, string , boolean, array Pour connaître le type d’une variable : gettype($variable) Pour changer le type d’une variable : settype($variable , type); // type doit être passé en chaine de caractères
  • 12. Les opérateurs L’opérateur d’affectation : = Les opérateurs arithmétiques ◦ Addition : + ◦ Soustraction : - ◦ Multiplication : * ◦ Division : / ◦ Modulo : % ◦ Incrément / Décrément : ++ et -- Les opérateurs compactes : += , -= , *= , /= , %= Exemple : ($var += 3) signifie ($var = $var + 3)
  • 13. Les opérateurs (2) Les opérateurs de comparaison ◦ Egalité : == ◦ Infériorité stricte : < ◦ Supériorité stricte : > ◦ Inférieur ou égal : <= ◦ Supérieur ou égal : >= ◦ Différent de : != Les opérateurs logiques ◦ ET logique : && ou AND ◦ OU logique : || ou OR ◦ Négation (NOT) : ! ◦ OU Exclusif : XOR
  • 14. Les opérateurs (3) L’ opérateur ternaire : [Condition] ? [Expression effectuée si VRAI] : [Expression effectuée si FAUX] Exemple: ◦ ($a < $b) ? $a = 0 : $b = $a ; ◦ $var = ($a < $b) ? $a : $b ; ◦ …etc.
  • 16. Les structures de programme Mis à part une structure, PHP reste très similaire au langage C pour ce qui est des structures de programme qu’il utilise : if … else, while, for et switch.
  • 17. Structures de choix avec IF <? php if ( /* condition 1 */ ) { // Bloc d’instructions } elseif ( /* condition 2 */ ) { // Bloc d’instructions } .. .. elseif ( /* condition n */ ) { // Bloc d’instructions } else // sinon { // Bloc d’instructions } ?>
  • 18. Structures de choix avec Switch … Case <? php switch ( $variable ) { case valeur_1 : // Bloc d’instructions; break ; case valeur_2 : // Bloc d’instructions; break ; .. .. .. case valeur_n : // Bloc d’instructions; break ; default : // Bloc d’instructions; break ; } ?>
  • 19. Structure de boucle avec While <? php while ( /* condition */ ) { // Bloc d’instructions ; } ?>
  • 20. Structure de boucle avec For <? php for ( $var = 0 ; $var<n ; $var ++ ) { // Bloc d’instructions ; } ?>
  • 21. Une nouvelle For : la boucle Foreach Elle se présente comme indiquer ci-contre ( la forme la plus simple) Généralement utilisée pour le parcours de tableaux Signifie littéralement : « Pour tout élément dans le tableau » La variable $element prend , une à une, toute les valeurs des éléments de $tableau jusqu’à le parcourir complètement <? php foreach ( $tableau as $element ) { // Bloc d’instructions ; } ?>
  • 22. Les instructions de contrôle : Break et Continue Break : permet de sortir d’un block d’instructions Continue : permet, dans une structure de boucle, de sauter l’itération actuelle et de passer directement à la suivante Exemple: Le programme ci-contre affiche tous les nombres impairs inférieurs à 10 <? php for ($i = 0 ; $i < 10 ; $i ++ ) { if ( ! ( $i % 2) ) continue; echo $i . ‘’ , ‛ ; } ?>
  • 23. Les tableaux en PHP LE TITRE EST ASSEZ CLAIRE POUR SE PASSER DE SOUS- TITRES :P
  • 24. Les tableaux en php En php, il existe 2 types de tableaux : ◦ Les tableaux « classiques » : ce sont les tableaux dont on a l’habitude. Ils peuvent être à une ou plusieurs dimensions. ◦ Les tableaux associatifs : ce sont des tableaux qui au lieu d’avoir des indices numériques ont des indices de type chaine de caractères. On parle alors de « clé » (une clé doit être unique)
  • 25. Les tableaux « classiques » Déclaration : plusieurs manières de faire ◦ $tableau = array($var , valeur , …); ◦ $tableau[] = valeur ; ◦ $matrice = array( array() , array() ); ◦ $matrice[][] = valeur; ◦ …etc. Exemple: <? php $tableau = array(); $tableau[ 0 ] = 1 ; $tableau[ 1 ] = 3 ; $tableau[ 2 ] = 22 ; $tableau[] = 72 ; $tableau[] = 1.85 ; ?> Cette instruction permet d’ajouter une valeur à la fin du tableau
  • 26. Les tableaux associatifs Déclaration : N’est pas différente de celle des tableaux « classiques ». Il suffit seulement d’utiliser des chaines de caractères au lieu des indices numériques. Exemple: Remarque : Comme le montre le tableaux, rien n’empêche d’avoir des valeurs de types différents dans un tableau <? php $tableau = array(); $tableau[‚Nom‛] = ‚Amarouche‛ ; $tableau[‚Prenom‛] = ‚Youcef‛ ; $tableau[‚Age‛] = 22 ; $tableau[‚Caract‛][‚poid‛] = 72 ; $tableau[‚Caract‛][‚taille‛] = 1.85 ; ?>
  • 27. Operations sur les tableaux associatifs <? php array_key_exists ('cle', $array); // pour vérifier si une clé existe dans le tableau in_array ($valeur, $array); // pour vérifier si une valeur existe dans le tableau array_search ($valeur, $array); // pour récupérer la clé d’une valeur dans le tableau ?>
  • 29. Opérations sur les chaines de caratères La concaténation ◦ Il existe un opérateur pour cela. L’opérateur : . ◦ Exemple : $chaine = ‚chaine‛ . $var // var peut être du type int, double ou string Longueur d’une chaine de caractères : strlen($chaine); Accèder à un caractère : $chaine{n} Extraire une sous-chaine : substr($chaine , $deb, $fin); …etc.
  • 31. La fonction echo Sert à afficher du texte sur l’écran. Dans le cas d’une page web, le texte sera afficher sur la page. Contrairement aux autres fonctions, elle ne nécessite pas de parenthèses Exemple: ◦ echo $variable; ◦ echo ‚chaine‛; ◦ echo ‚<a href = ‘#’>lien</a>‛; ◦ …etc.
  • 32. Déclaration et utilisation <? php function Mafonction(/*paramètres*/) { // code de la fonction; } .. .. Mafonction(/*paramètres*/); ?> <? php function Mafonction(/*paramètres*/) { // code de la fonction; return $valeur ; } .. .. $var = Mafonction(/*paramètres*/); ?>
  • 33. Utilisation avancée <? php function Mafonction($par1 , $par2 = valeur) { // code de la fonction; } ?> <? php require($path_vers_fonction); // $path_vers_fonction est le chemin vers le // fichier contenant la fonction externe ?> Fonction avec paramètre optionnel Utilisation d’une fonction externe
  • 34. La fonction include() Cette fonction permet d’inclure un bout de code (externe) dans le code source php. Exemple: Le code de l’exemple produira une page similaire à celle obtenue si l’on devait copier le contenu du fichier indiqué en paramètre et le coller dans notre code source à la place de include <? php include($path_vers_fichier); // $path_vers_fichier est le chemin vers le // fichier contenant le code à inclure ?>
  • 35. Autres fonctionnalités LES COOKIES, LES SESSIONS, LA POO …ETC