Manuel PHP
Précédent | Annexe O. A propos du manuel | Suivant

# Comment lire la définition d'une fonction (prototype)

Chaque fonction est documentée pour permettre une compréhension rapide. Savoir décoder le manuel rendra votre lecture plus facile. Plutôt que de dépendre d'exemples prêts en copier/coller, il est mieux de savoir lire la définition d'une fonction (prototype). Voici comment :

> Pré-requis : Connaissances de base des types. : Bien que `PHP` soit un langage sans typage fort, une connaissance de base des types est essentielle, car ils ont quand même des sens importants.

Les définitions de fonctions vous indiquent quel type de données est retourné. Examinons la fonction strlen() comme exemple :

    strlen

    (PHP 3, PHP 4 >= 4.0.0)
    strlen -- Retourne la taille de la chaîne

    Description
    int strlen ( string  str )

    strlen() retourne la taille de la chaîne str.

Tableau O-1. Explications de la définition de la fonction

Partie | Description
--- | ---
strlen | Le nom de la fonction.
(`PHP` 3, `PHP` 4 >= 4.0.0) | strlen() est présente dans toutes les versions de `PHP` 3 et `PHP` 4.
int | Type de valeur retourné par cette fonction, qui est en l'occurrence un entier (i.e. la taille d'une chaîne est mesurée par un nombre).
( string str ) | Le premier (et ici le seul) paramètre à fournir à strlen est le paramètre `str`, qui doit être du type chaîne de caractères.

Nous pourrions réécrire ce prototype avec une version plus générique :

    type_retourné   nom_de_la_fonction    ( type_du_paramètre nom_du_paramètre )

Plusieurs fonctions ont besoin de plusieurs paramètres, comme par exemple in_array(). Son prototype est le suivant :

    bool in_array ( mixed needle, array haystack [, bool strict])

Qu'est ce que cela signifie? in_array() retourne un booléen `TRUE` en cas de réussite (le paramètre `needle` a été trouvé dans le tableau `haystack`) ou `FALSE` en cas d'échec (le paramètre `needle` n'a pas été trouvé dans le tableau `haystack`). Le premier paramètre s'appelle `needle` et il peut être de différents types : il porte donc la mention `mixed`. Le paramètre `needle` (ce que nous recherchons) peut être une valeur scalaire ( chaîne de caractères, entier, ou nombre à virgule flottante), ou encore un tableau. `haystack` (le tableau dans lequel nous recherchons) est le second paramètre. Le troisième paramètre, `strict`, est optionnel. Tous les paramètres optionnels sont placés entre crochets. La manuel indique que le paramètre `strict` vaut par défaut `FALSE`. Reportez-vous au manuel de chaque fonction pour savoir comment elle fonctionne.

Précédent | Sommaire | Suivant
A propos des notes utilisateurs | Niveau supérieur | Versions de `PHP` documentées dans ce manuel