- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Ez is egy kafa utólagos fejegység - Carpodgo T3 Pro
- Milyen okostelefont vegyek?
- Yettel topik
- Samsung Galaxy S23 Ultra - non plus ultra
- Redmi Watch 5 Lite - filléres fitneszfelügyelő
- Telekom mobilszolgáltatások
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Mobil flották
- Netfone
Új hozzászólás Aktív témák
-
Taci
addikt
Jó pár cron job-om ugyanazt a php fájlt használja (jelenleg require-rel). Függvényt ugye nem lehet újra deklarálni, ezért hogy ne legyen PHP Fatal error: Cannot redeclare fuggvenynev(), néztem, mi lenne a legjobb megoldás.
1) require_once
2) require és if (!function_exists('fuggvenynev'))A leírás szerint egyértelmű, hogy a
require_once
pont erre van kitalálva:
The require_once expression is identical to require except PHP will check if the file has already been included, and if so, not include (require) it again.De inkább rákérdezek, hogy tényleg ez-e a jó megoldás.
Csak mert ez olyan fura nekem. Én úgy értelmeztem (lehet, rosszul), hogy a require(_once) az kvázi olyan, mintha a behúzott fájl tartalma a behúzott helyre lenne másolva.
De mint ilyen, nem lenne szabad hogy látszódjon másik fájl futásából. Tehát ha én 10szer húzom be ugyanazt a fájlt 10 különböző kódba, és ezek egyszerre futnak, ezek nem kéne hogy "lássák egymást", így a "Cannot redeclare" hiba sem állhatna fent.
Viszont mégis adott, így gondolom, talán memóriában tárolásról lehet szó, és ott ellenőrzi, hogy az adott függvény deklarálva van-e. (De akkor pedig az csak addig él, amíg az eredetileg hívó szkript fut. Ha befejezte a futását, akkor törlődik a memóriából. Mi van akkor, ha közben egy másik szkript épp használná valamelyik függvényt az első require_once-ból, de mivel az a másodiknak már nem engedte a require-et, viszont időközben kilépett, mi történik ekkor? Logikus az lenne, ha látja, hogy volt másik require_once, amit elutasított, de az azt hívó még fut, addig a memóriában tartja neki.)Kusza ez nekem, ezért kérnék tanácsot, hogy végülis melyik a jobb, az 1) vagy a 2)?
Köszi.
Új hozzászólás Aktív témák
- Eladó Makulátlan 16" MacBook Pro M1 Pro 16/1TB (10/16) Dobozában, ajándék tokkal.
- Logitech G923 Racing Wheel and Pedals Xbox One/PC Kormány És Pedálsor
- eladó 4db 2TB NASware WD red (WD20EFAX)
- Xiaomi Redmi Note 13 Pro+ 5G 512GB 12GB RAM - 2027. FRBRUÁRIG GARANCIÁS / akár beszámítással is
- ÚJ Lenovo LOQ 15ARP9 - 15.6" FullHD IPS 144Hz - Ryzen 7 7435HS - 24GB - 512GB - RTX 4050 - 2 év gari
- DELL PowerEdge R630 rack szerver - 2xE5-2680v4 (28c/ 56t, 2.4/3.3GHz), 128GB RAM, 10G, áfás szla
- Xiaomi 12T Pro 8/256 GB kék / 12 hó jótállás
- iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3045, 96% Akkumulátor
- ÁRGARANCIA!Épített KomPhone Ryzen 5 9600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Felsőkategóriás merev csöves Gamer PC-Számítógép! I9 11900K / RTX 3090 24GB / 64GB DDR4 / 1TB SSD
Állásajánlatok
Cég: FOTC
Város: Budapest