Php, ezt akkor minek használjuk tisztázzuk?
Most ismerkedem a php-val, és van két függvény,és nem értem az egyik értelmét.
include
require
Mikor van szükség require? az,ha nem találja meg a fájlt/állományt azonnal megszakítja a programfutását, az inculde meg,folytatja,csak jelez,hogy mi van.
Tudtok példát arra,hogy require-t mikor használnád.
és van az a kifejezés amikor elöttük van _once.
elvileg a once kifejezéssel megvizsgálja,hogy nem illesztettük be a kódot? ezt nem értem annyira(angol könyvet olvasok,lehet rosszul értelmezem) segítenétek.
köszi
A hivatalos dokumentáció leírja:
"require is identical to include except upon failure it will also produce a fatal E_COMPILE_ERROR level error. In other words, it will halt the script whereas include only emits a warning (E_WARNING) which allows the script to continue. "
Forrás: [link]
"The require_once statement is identical to require except PHP will check if the file has already been included, and if so, not include (require) it again. "
Forrás: [link]
"This is a behavior similar to the include statement, with the only difference being that if the code from a file has already been included, it will not be included again, and include_once returns TRUE. "
Forrás: [link]
- include: lefuttatja a php kódot a megadott fájlban. Ha hiba történik (pl nem létezik a fájl), akkor csak figyelmeztetést dob a PHP, a kód fut tovább. Azonban valószínűleg ha beinclude-oltad a fájlt, akkor azért tetted, mert szükség van rá, így értelmetlen tovább futnia a kódnatk.
- include_once: ugyanaz mint az include, de ha már be van include-olva a megadott fájl, nem futtatja le újra
- require: Lefuttatja a php kódot a megadott fájlban. Ha hiba történik (pl nem létezik a fájl), akkor végzetes hibával leáll a kód futása.
- require_once: ugyanaz mint a require, de ha már egyszer lefutott a megadott fájl, nem futtatja le újra.
Az _once változatok arra jók, hogyha mondjuk van egy php fájlod segédfüggvényekkel, pl. "functions.php", akkor a többi php fájlba csak beírod a kód elejére hogy:
require_once 'functions.php';
És nem lesz gond, ha több helyről is be akarnád require-olni a fájlt (pl berequire-olsz olyan fájlokat, amik szintén require-olják a functions.php-t)
"de ha már egyszer lefutott a megadott fájl, nem futtatja le újra."
Miért ha nincs once előtte ez akkor végtelenszer lefut?
vagy ezt most nem értem
Miért futna le végtelenszer? Ha már egyszer behúztad, akkor nem fogja ismét, akkor sem ha once-al megpróbálod. Once nélkül ismét behúzza a fájl tartalmát a fájlba. Azért kell a once, hogy a befordítás ne legyen feleslegesen lassú.
Erre egyébként vannak metodikák, hogy lehet egy php alapú kiszolgálót gyorsítani.
Utolsó: igen, mert gyökerek és nem akarnak tanulni. Csak kérdezgetnek itt teljesen feleslegesen.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!