Kezdőoldal » Számítástechnika » Programozás » Php, ezt akkor minek használju...

Php, ezt akkor minek használjuk tisztázzuk?

Figyelt kérdés

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


2018. szept. 22. 18:58
 1/7 anonim ***** válasza:
0%
Az include-t soha nem használod, semmire nem jó.
2018. szept. 22. 19:15
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:
Köszönöm a válaszod, most jól összezavartál, kifejtenéd?
2018. szept. 22. 19:17
 3/7 anonim ***** válasza:
100%

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]

2018. szept. 22. 19:25
Hasznos számodra ez a válasz?
 4/7 anonim ***** válasza:

- 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)

2018. szept. 22. 19:37
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:

"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

2018. szept. 22. 19:44
 6/7 anonim ***** válasza:
52%

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.

2018. szept. 22. 19:59
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:
#5 Nem végtelenszer, csak minden alkalommal amikor egy fájlban include-olod. A sima és a _once verziók között az a különbség, hogy ha valami folytán többször szerepel ugyanannak a fájlnak az include-olása, akkor az első változat minden alkalommal újra futtatja a kódot, míg a másik azt mondja "nem, ezt már egyszer beolvastunk, lépjünk tovább". Ez azért fontos, mert ha pl változókat, függvényeket, osztályt, stb-t deklarálsz benne, akkor azonnal problémázni fog a php, hogy ugyanazt a függvényt akarod kétszer deklarálni. Amíg 2-3 fájlból áll a php kódod addig nem feltétlenül látod ennek az értelmét, de amikor egy sok száz fájlból álló rendszerről beszélünk, ahol már akár több tucat rétegen keresztül futnak az include-ok, akkor elég problémás lenne, ha arra is oda kéne figyleni, nehogy véletlenül az include include-jának az include-jában be legyen húzva ugyanaz a fájl még egyszer.
2018. szept. 22. 20:00
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!