Kód include-olása

Mindenhol, ahol feltétel nélkül include-olunk egy osztályfájlt, használjunk require_once()-ot. Mindenhol, ahol feltételesen include-olunk egy osztályfájlt, használjuk az include_once()-ot. Ezek az utasítások közös fájllistát használnak, így nem kell aggódnunk felváltva történő alkalmazásuk miatt - egy fájl, amit require_once()-al include-oltunk, nem kerül ismételten include-olásra az include_once() meghívása esetén sem.

Az include_once() és a require_once() utasítások, nem függvények. Amennyiben lehetséges, ne használjunk zárójeleket az itt megadott fájl neve körül.
Megjegyzések (kommentek) (Previous) PHP tag-ek (Next)
Last updated: Fri, 27 Nov 2015 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: StanE
I think that since SPL is part of PHP for a long time now, no includes should be used at all anymore. Namespaces have much more advantages. They automatically include files and they do this only when it is required (so memory is saved - especially if you use frameworks). They also define the folder structure (which is an advantage imho, not a disadvantage) so you don't have to care how much folders you have to go down or up and the namespaces prevent name collisions. Also you can specify the file extension(s) through the SPL at one place, instead writing them in every include statement (imagine your hoster is a cool badass and is using PHP 7 on the server but your PHP application needs to run under PHP 5 so you have to use .php5 file extensions - have a nice day changing your code...).
Note by: daevid@daevid.com
To change all require_once('foo.php'); to require_once 'foo.php' execute this:

cd /var/www/

find . -name '*.php' -print | xargs egrep -l \
'require_once\s*(\(.*\));'\ | xargs sed -i.sedorig -e \
's/require_once\s*(\(.*\));/require_once \1;/'

(thanks to Robert Hajime Lanning for that)

Then to remove all the ".php.sedorig" backup files execute this:

find . -name "*.php.sedorig" -type f -exec rm -rf {} \;