- Plan du Site | Contact

Définition

Une fonction se définit à l'aide du mot-clé function, d'un identifiant valide, et de parenthèses '()'.

 

  • Toute instruction PHP valide peut être contenue à l'intérieur du bloc délimité par les accolades '{}' :

<?php

function bateau() {

echo "fonction remplie !";

}

bateau(); // appel de fonction

?>

retourne : fonction remplie !

 

  • Les parenthèses peuvent renfermer un ou plusieurs arguments :

<?php

function mult($i, $j) { // $i et $j sont des variables locales

return $i*$j; /* multiplie les valeurs des deux arguments

et retourne le résultat */

}

?>

  • L'instruction return est utilisé soit pour retourner une valeur (ou une variable), soit pour interrompre le déroulement d'une fonction avec une valeur de retour (comme son homonyme en C).

 

Pour implémenter cette fonction, passons-lui deux variables en argument :

<?php

$a = 5;

$b = 6;

$c = mult($a, $b); /* assignation de la valeur de retour

d'une fonction à une variable */

?>

valeur de $c : 30

 

To top

Passage d'Arguments

Une variable déclarée à l'intérieur d'une fonction n'a aucune valeur à l'extérieur (portée locale) :

<?php

$a=5;

function compteur_non_fonctionnel($i) {

$i++;

}

compteur_non_fonctionnel($a);

?>

valeur de $a : 5

 

L'opérateur d'adresse '&' permet à une variable locale de pointer sur l'adresse d'une globale :

<?php

function compteur_fonctionnel(&$i) {

/* $i pointe désormais sur l'adresse de la variable passée en argument

lors de l'appel de fonction */

$i++;

}

compteur_fonctionnel($a);

?>

valeur de $a : 6

 

To top

$_GLOBALS

Une variable déclarée à l'extérieur d'une fonction (portée globale) n'a pas cours à l'intérieur de celle-ci.

 

Si l'on doit faire appel à une globale à l'intérieur d'une fonction, il faut la faire précéder du mot réservé global :

<?php

function nouveau_compteur () {

global $a;

$a++;

}

nouveau_compteur();

?>

valeur de $a : 7

 

La variable prédéfinie $_GLOBALS est un tableau associatif dont les champs contiennent les globales déclarées dans le script :

<?php

function autre_compteur () {

$_GLOBALS['a']++;

}

autre_compteur();

?>

valeur de $a : 8

 

To top

require()

La fonction require() appelle et exécute un code contenu dans un fichier externe.

 

Soit un fichier "phrase.inc" situé dans le même dossier que le présent fichier :

le mot du jour :

<?php require("phrase.inc"); ?>

retourne :

le mot du jour :

Il vaut mieux qu'il pleuve un jour comme aujourd'hui qu'un jour où il fait beau !

 

L'extension .inc est par convention utilisée pour désigner un fichier de bibliothèque.

 

To top

include()

La fonction include() est similaire à require(), à ceci près qu'avec include() le traitement ne s'interrompra pas en cas d'erreur, et le reste de la page s'affichera normalement.

 

Voici le code d'un test idiot, appelant conditionnellement un fichier de bibliothèque ou un autre, selon l'indice criminogène de votre navigateur :

<?php

if (ereg ("MSIE", $HTTP_USER_AGENT)) {

include ('IE.inc');

} else {

include ('NOT.inc');

}

?>

La fonction ereg() recherche (et renvoie TRUE si elle trouve) la chaîne 'MSIE' dans la chaîne retournée par $HTTP_USER_AGENT.

 

To top

Actualités
29-05-2008
... Et profitez d'un Web meilleur : Mozilla tente d'établir un record du nombre de logiciels téléch...
29-08-2007
Plusieurs extensions permettent d'intégrer les éléments de cette API mise à disposition par Google.
1-03-2007
TinyButStrong est un moteur de Template pour le language PHP.
20-11-2006
Le LABEL CLE a été décerné au Portail de la Communauté de Communes de Sartilly.
9-11-2006
Depuis sa version 2.0, OpenOffice n'a plus rien à démontrer face aux suites logicielles de bureautiq...
9-11-2006
Disponible dans plus de 33 langues, le nouveau Firefox est encore plus rapide, plus sûr et totalemen...
8-11-2006
Artichow est une librairie qui permet de créer simplement des graphiques avec PHP et GD. On pourra a...
25-08-2006
Le célèbre navigateur "Firefox" est plus performant que jamais. Naviguez sur le Web avec confiance !

Liens Utiles


PHP / MySQL

zend.com

nexen.net

phpteam.net

laltruiste.com

phpinfo.net

phpfacile.com


XML & CSS

openweb.eu.org

csszengarden.com

cssbeauty.com

cssvault.com

alistapart.com


LINUX

formation-linux

debian-fr.org

lea-linux.org

 

Services | Solutions | Formations | Portfolio | Photos | F.A.Q. | Accès Client
© 2004-2008 ACCEDO - Siret : 452 155 112 00017
6, Chemin des Moires - 50740 CAROLLES
Tél : 06 83 88 31 78