SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Fonctions en PHP
2 types de fonctions en PHP :

Fonctions natives (ex: intval())

Fonctions utilisateurs

Exemple : http://pastebin.com/R6wvXvPR
Fonctions utilisateur
Ensemble d’instructions (sorte de sous-
programmes)

Permet d’exécuter les mêmes instructions à
différents endroits du code sans le dupliquer

Peut retourner une valeur

Peut prendre des paramètres en entrée
Fonctions utilisateur
Déclaration avec :

function Nom_De_La_Fonction($arg1, $arg2){ //
Instructions }

On peut mettre des valeurs par défaut pour les
paramètres :

function Nom_Fonction($arg1 = ’’valeur’’){}
Fonctions utilisateur
Pour retourner une valeur à partir de la fonction,
on place dans la fonction :

return $var;

L’exécution de la fonction est stoppée quand une
valeur est retournée.

On peut avoir plusieurs instructions de retour, mais
la fonction s’arrêtera à la première rencontrée.
Fonctions utilisateur
On appel une fonction dans le code en mettant
simplement son nom et les paramètres
nécessaires :

Nom_Fonction(’’valeur’’, $param2);

Les paramètres peuvent être optionnels, dans ce
cas nous ne sommes pas obligé d’en passer.
Fonctions utilisateur
On peut récupérer la valeur de retour de la
fonction dans une variable ou directement une
structure conditionnelle :

$var = Nom_Function($param1, $param2);

if(Nom_Fonction($param1, $param2)){ // Instr }
Fonctions utilisateur
Rappel : Les variables dans une fonction ne sont utilisables
que dans celle-ci (c.f. Variables locales et globales)

Il peut y avoir plusieurs niveaux de déclaration de variables :

global : Permet à une variable extérieure d’être visible
dans la fonction

static : Permet d’avoir une variable dans une fonction qui
persiste durant toute l’exécution du script

local : Valeur par défaut, cette variable n’est visible que
dans l’exécution en cours de la fonction
Fonctions utilisateur
Les paramètres passés en entrée d’une fonction
sont des copies, leur modification ne sera que
interne.

Il est possible de les utiliser par référence en les
préfixant par & et donc modifier leur valeur en
dehors de la fonction.

La valeur de retour peut aussi être une référence,
on préfixe alors la déclaration de la fonction par &.
Fonctions utilisateur
Pour retourner plusieurs valeurs d’une fonction, il
faut les retourner sous forme de tableau.

La méthode list() permet alors d’assigner dans
l’ordre les éléments du tableau à des variables.

Exemple : list($var1, $var2, $var3) = fonction();
Inclure des fichiers et
bibliothèques
Fonctionne grâce à deux fonctions PHP (natives) :

require();

include();

Permettent la réutilisation du code contenu dans
un fichier, appelé bibliothèque

PHP recopiera votre bibliothèque à l’endroit où
vous l’appelez
Inclure des fichiers et
bibliothèques
Utile par exemple pour la gestion des paramètres
de connexions à une base de données

Permet également de créer des templates de
page, par exemple avec un fichier header.php et
footer.php réutilisé sur toutes vos pages
Différence entre include et
require
Include : Le fichier est à chaque fois inséré et
complètement ré-exécuté à l’endroit de son appel.
Provoque un warning en cas d’erreur.

Require : Le fichier est inséré avec les valeurs
identiques à celles de sa première exécution.
Provoque une erreur en cas d’échec.
Inclure des fichiers et
bibliothèques
require_once et include_once : Permet d’insérer
un fichier tout en vérifiant qu’il ne l’a pas déjà été.
Cela permet d’éviter des erreurs lors de plusieurs
inclusions dans différentes classes PHP.
EXERCICES

Contenu connexe

Tendances

Uniform Variable Syntax
Uniform Variable SyntaxUniform Variable Syntax
Uniform Variable SyntaxDarkmira
 
PHP 7 et Symfony 3
PHP 7 et Symfony 3PHP 7 et Symfony 3
PHP 7 et Symfony 3Eddy RICHARD
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3Amir Souissi
 
Csharp1 : quelques elements de base
Csharp1 :  quelques elements de baseCsharp1 :  quelques elements de base
Csharp1 : quelques elements de baseAbdoulaye Dieng
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en PythonABDESSELAM ARROU
 
PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introductionJean Michel
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchronesAbdoulaye Dieng
 
Php 7.4 2020-01-28 - afup
Php 7.4   2020-01-28 - afupPhp 7.4   2020-01-28 - afup
Php 7.4 2020-01-28 - afupJulien Vinber
 
Anatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libcAnatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libcThierry Gayet
 
Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)Ayoub Rouzi
 

Tendances (19)

Uniform Variable Syntax
Uniform Variable SyntaxUniform Variable Syntax
Uniform Variable Syntax
 
PHP 7 et Symfony 3
PHP 7 et Symfony 3PHP 7 et Symfony 3
PHP 7 et Symfony 3
 
Php1
Php1Php1
Php1
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3
 
Csharp1 : quelques elements de base
Csharp1 :  quelques elements de baseCsharp1 :  quelques elements de base
Csharp1 : quelques elements de base
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en Python
 
Les listes en Python
Les listes en PythonLes listes en Python
Les listes en Python
 
PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introduction
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Introduction à Python
Introduction à PythonIntroduction à Python
Introduction à Python
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchrones
 
Php cours
Php coursPhp cours
Php cours
 
Php 7.4 2020-01-28 - afup
Php 7.4   2020-01-28 - afupPhp 7.4   2020-01-28 - afup
Php 7.4 2020-01-28 - afup
 
Theme 7
Theme 7Theme 7
Theme 7
 
Anatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libcAnatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libc
 
Playing With PHP 5.3
Playing With PHP 5.3Playing With PHP 5.3
Playing With PHP 5.3
 
Hibernate jpa
Hibernate jpaHibernate jpa
Hibernate jpa
 
Programmation shell
Programmation shellProgrammation shell
Programmation shell
 
Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)
 

En vedette

Guide de securite php
Guide de securite phpGuide de securite php
Guide de securite phpbelfkih
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securiteBorni Dhifi
 
PHP MVC Tutorial
PHP MVC TutorialPHP MVC Tutorial
PHP MVC TutorialYang Bruce
 
Application web php5 html5 css3 bootstrap
Application web php5 html5 css3 bootstrapApplication web php5 html5 css3 bootstrap
Application web php5 html5 css3 bootstrapBassem ABCHA
 
Sécurité et Quaité de code PHP
Sécurité et Quaité de code PHPSécurité et Quaité de code PHP
Sécurité et Quaité de code PHPJean-Marie Renouard
 
Examen principal - PHP
Examen principal - PHPExamen principal - PHP
Examen principal - PHPInes Ouaz
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiENSET, Université Hassan II Casablanca
 
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
 
Mini projet individuel php
Mini projet individuel phpMini projet individuel php
Mini projet individuel phpKhadim Mbacké
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyENSET, Université Hassan II Casablanca
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPkemenaran
 
Un exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPUn exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPKristen Le Liboux
 

En vedette (20)

PHP 5 et la programmation objet
PHP 5 et la programmation objetPHP 5 et la programmation objet
PHP 5 et la programmation objet
 
Guide de securite php
Guide de securite phpGuide de securite php
Guide de securite php
 
INITIATION_PHP_NAB_2009
INITIATION_PHP_NAB_2009INITIATION_PHP_NAB_2009
INITIATION_PHP_NAB_2009
 
PHP 7 - Think php7
PHP 7 - Think php7PHP 7 - Think php7
PHP 7 - Think php7
 
La première partie de la présentation PHP
La première partie de la présentation PHPLa première partie de la présentation PHP
La première partie de la présentation PHP
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securite
 
PHP7 Presentation
PHP7 PresentationPHP7 Presentation
PHP7 Presentation
 
PHP MVC Tutorial
PHP MVC TutorialPHP MVC Tutorial
PHP MVC Tutorial
 
Application web php5 html5 css3 bootstrap
Application web php5 html5 css3 bootstrapApplication web php5 html5 css3 bootstrap
Application web php5 html5 css3 bootstrap
 
Sécurité et Quaité de code PHP
Sécurité et Quaité de code PHPSécurité et Quaité de code PHP
Sécurité et Quaité de code PHP
 
PHP 7
PHP 7PHP 7
PHP 7
 
Les structures de données PHP5
Les structures de données PHP5Les structures de données PHP5
Les structures de données PHP5
 
Examen principal - PHP
Examen principal - PHPExamen principal - PHP
Examen principal - PHP
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 
Cours design pattern m youssfi partie 2 observer
Cours design pattern m youssfi partie 2 observerCours design pattern m youssfi partie 2 observer
Cours design pattern m youssfi partie 2 observer
 
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
 
Mini projet individuel php
Mini projet individuel phpMini projet individuel php
Mini projet individuel php
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategy
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHP
 
Un exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPUn exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHP
 

Similaire à Bases de php - Partie 3

0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdfRihabBENLAMINE
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.pptAmineReal
 
03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdf03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdfAhmed12314
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en pythonMariem ZAOUALI
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSSAyoubElmrabet6
 
Php_Mysql.pdf
Php_Mysql.pdfPhp_Mysql.pdf
Php_Mysql.pdfETTAMRY
 
Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5halleck45
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScriptKristen Le Liboux
 
ALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxHathat10
 
Formation java script
Formation java scriptFormation java script
Formation java scriptRomdhani Asma
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academySoufiane SAHMI
 
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
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Aziz Darouichi
 
Présentation ppt
Présentation pptPrésentation ppt
Présentation pptBoudhir
 

Similaire à Bases de php - Partie 3 (20)

0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.ppt
 
POO en C++: Les fonctions
POO en C++: Les fonctionsPOO en C++: Les fonctions
POO en C++: Les fonctions
 
03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdf03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdf
 
Php4 Mysql
Php4 MysqlPhp4 Mysql
Php4 Mysql
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en python
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSS
 
Php_Mysql.pdf
Php_Mysql.pdfPhp_Mysql.pdf
Php_Mysql.pdf
 
Initiation au langage PHP
Initiation au langage PHPInitiation au langage PHP
Initiation au langage PHP
 
Exploiter php 5
Exploiter php 5Exploiter php 5
Exploiter php 5
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScript
 
ALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptx
 
Formation java script
Formation java scriptFormation java script
Formation java script
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academy
 
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
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019
 
Chap2fonctionscpp
Chap2fonctionscppChap2fonctionscpp
Chap2fonctionscpp
 
Présentation ppt
Présentation pptPrésentation ppt
Présentation ppt
 
ch6 les sous programmes.pdf
ch6 les sous programmes.pdfch6 les sous programmes.pdf
ch6 les sous programmes.pdf
 
Php seance1
Php seance1Php seance1
Php seance1
 

Bases de php - Partie 3

  • 1. Fonctions en PHP 2 types de fonctions en PHP : Fonctions natives (ex: intval()) Fonctions utilisateurs Exemple : http://pastebin.com/R6wvXvPR
  • 2. Fonctions utilisateur Ensemble d’instructions (sorte de sous- programmes) Permet d’exécuter les mêmes instructions à différents endroits du code sans le dupliquer Peut retourner une valeur Peut prendre des paramètres en entrée
  • 3. Fonctions utilisateur Déclaration avec : function Nom_De_La_Fonction($arg1, $arg2){ // Instructions } On peut mettre des valeurs par défaut pour les paramètres : function Nom_Fonction($arg1 = ’’valeur’’){}
  • 4. Fonctions utilisateur Pour retourner une valeur à partir de la fonction, on place dans la fonction : return $var; L’exécution de la fonction est stoppée quand une valeur est retournée. On peut avoir plusieurs instructions de retour, mais la fonction s’arrêtera à la première rencontrée.
  • 5. Fonctions utilisateur On appel une fonction dans le code en mettant simplement son nom et les paramètres nécessaires : Nom_Fonction(’’valeur’’, $param2); Les paramètres peuvent être optionnels, dans ce cas nous ne sommes pas obligé d’en passer.
  • 6. Fonctions utilisateur On peut récupérer la valeur de retour de la fonction dans une variable ou directement une structure conditionnelle : $var = Nom_Function($param1, $param2); if(Nom_Fonction($param1, $param2)){ // Instr }
  • 7. Fonctions utilisateur Rappel : Les variables dans une fonction ne sont utilisables que dans celle-ci (c.f. Variables locales et globales) Il peut y avoir plusieurs niveaux de déclaration de variables : global : Permet à une variable extérieure d’être visible dans la fonction static : Permet d’avoir une variable dans une fonction qui persiste durant toute l’exécution du script local : Valeur par défaut, cette variable n’est visible que dans l’exécution en cours de la fonction
  • 8. Fonctions utilisateur Les paramètres passés en entrée d’une fonction sont des copies, leur modification ne sera que interne. Il est possible de les utiliser par référence en les préfixant par & et donc modifier leur valeur en dehors de la fonction. La valeur de retour peut aussi être une référence, on préfixe alors la déclaration de la fonction par &.
  • 9. Fonctions utilisateur Pour retourner plusieurs valeurs d’une fonction, il faut les retourner sous forme de tableau. La méthode list() permet alors d’assigner dans l’ordre les éléments du tableau à des variables. Exemple : list($var1, $var2, $var3) = fonction();
  • 10. Inclure des fichiers et bibliothèques Fonctionne grâce à deux fonctions PHP (natives) : require(); include(); Permettent la réutilisation du code contenu dans un fichier, appelé bibliothèque PHP recopiera votre bibliothèque à l’endroit où vous l’appelez
  • 11. Inclure des fichiers et bibliothèques Utile par exemple pour la gestion des paramètres de connexions à une base de données Permet également de créer des templates de page, par exemple avec un fichier header.php et footer.php réutilisé sur toutes vos pages
  • 12. Différence entre include et require Include : Le fichier est à chaque fois inséré et complètement ré-exécuté à l’endroit de son appel. Provoque un warning en cas d’erreur. Require : Le fichier est inséré avec les valeurs identiques à celles de sa première exécution. Provoque une erreur en cas d’échec.
  • 13. Inclure des fichiers et bibliothèques require_once et include_once : Permet d’insérer un fichier tout en vérifiant qu’il ne l’a pas déjà été. Cela permet d’éviter des erreurs lors de plusieurs inclusions dans différentes classes PHP.