Manuel PHP
Précédent | Chapitre 16. Les structures de contrôle | Suivant

# require_once()

La commande require_once() se remplace elle-même par le fichier spécifié, un peu comme les commandes de préprocesseur C `#include`, et ressemble sur ce point à require(). La principale différence est qu'avec require_once(), vous êtes assurés que ce code ne sera ajouté qu'une seule fois, évitant de ce fait les redéfinitions de variables ou de fonctions, génératrices d'alertes.

require_once() doit être utilisée dans les cas où le même fichier risque d'être inclus et évalué plusieurs fois durant l'exécution d'un script. Vous serez alors sûrs qu'il ne sera inclus qu'une fois et vous éviterez les problèmes de re-déclarations de fonctions ou autres.

Pour des exemples avec require_once() et include_once(), reportez-vous au code PEAR inclus dans les dernières distributions PHP.

Les valeurs retournées sont les mêmes que lors de l'utilisation de include(). Si le fichier a déjà été inclus, cette fonction retourne `TRUE`.

> Note : require_once() a été ajouté en PHP 4.0.1pl2

> Note : Attention, require_once() et include_once() sont insensibles à la casse sous les systèmes comme Windows.

> Exemple 16-39. require_once() est insensible à la casse sur Windows

> `require_once("a.php"); // ceci inclut le fichier a.php require_once("A.php"); // ceci inclut encore le fichier a.php sous Windows! (uniquement en PHP 4)`

> Ce comportement a changé en PHP 5 - le chemin est normalisé d'abord, donc, le fichier `C:\PROGRA~1\A.php` est reconnu comme étant identique au fichier `C:\Program Files\a.php` et le fichier ne sera requis qu'une seule fois.

Avertissement
Les versions Windows de PHP antérieures à la version 4.3.0 ne supportent pas l'accès aux fichiers distants avec cette fonction, même si allow_url_fopen est activé.

Voir aussi require(), include(), include_once(), get_required_files(), get_included_files(), readfile() et virtual().

Précédent | Sommaire | Suivant
include() | Niveau supérieur | include_once()