Manuale PHP
Indietro | Capitolo 16. Strutture di controllo | Avanti

# require_once()

L'istruzione require_once() include e valuta il file specificato durante l'esecuzione dello script. È un comportamento simile all'istruzione require(), con la sola differenza che se il codice di un file è stato già incluso, esso non sarà incluso nuovamente. Vedere la documentazione di require() per maggiori informazioni su come funziona quest'istruzione.

require_once() dovrebbe essere usato nei casi dove lo stesso file potrebbe essere incluso e valutato più di una volta durante una particolare esecuzione di uno script, e volete essere sicuri che esso sia incluso esattamente una volta per evitare problemi con la ridefinizione di funzioni, riassegnazione di valori a variabili, etc.

Per esempi sull'utilizzo di require_once() e include_once(), consultare il codice PEAR incluso nell'ultima distribuzione del codice sorgente di PHP.

Il valore restituito è simile a include(). Se il file è già stato incluso, la funzione restituisce `TRUE`.

> Nota: require_once() è stato aggiunto in PHP 4.0.1pl2

> Nota: Fare attenzione al fatto che il comportamento di require_once() e include_once() può non essere quello atteso in sistemi che non distinguono le maiuscole dalle minuscole (tipo Windows).

> Esempio 16-12. require_once() non distingue tra maiuscole e minuscole in Windows

> `<?php require_once("a.php"); // questo include include a.php require_once("A.php"); // questo include a.php ancora, in Windows! (solo PHP 4) ?>`

> Questo comportamento è stato modificato in PHP 5 - il percorso viene normalizzato, in modo tale che `C:\PROGRA~1\A.php` diventa simile a `C:\Program Files\a.php` e quindi il file vine incluso solo una volta.

Avvertimento
la versione per Windows di PHP antecedente la 4.3.0 non supporta l'accesso remoto ai file da parte di questa funzione, anche se allow_url_fopen è abilitato.

Vedere anche: require(), include(), include_once(), get_required_files(), get_included_files(), readfile() e virtual().

Indietro | Partenza | Avanti
include() | Risali | include_once()