Autor | Zpráva | ||
---|---|---|---|
nethor Profil |
#1 · Zasláno: 12. 11. 2012, 09:43:58
Zdravím,
potřebuji použít include_once v funkci. (Nejprve ověřit, jsetli soubor existuje, atd..) Pokud include ale volám uvnitř funkce, nepředají se do includovaného souboru žádné proměnné. zjednodušený příklad: index.php : <?php $prom = "hodnota"; LoadFile("stranka.php"); function LoadFile($soubor){ include_once $soubor; } <?php var_dump($prom); vypíše NULL. Proměnná $prom začne být dostupná až, když do fce přidám global $prom; Psát do fce global pro každou proměnnou může vést k chybám z opomenutí. Funguje, když projedu $GLOBALS : foreach ($GLOBALS as $key=>$value) global $$key;
.. ale nevím, jestli si tím nezadělávám na nějaký konflikt. - Je to vpořádku? Jde to řešit nějak lépe? |
||
panther Profil |
#2 · Zasláno: 12. 11. 2012, 09:59:23
nethor:
„Jde to řešit nějak lépe?“ promenne, ktere potrebujes, predavej jako parametr dane funkci. Pouziti global se zkus vyvarovat. |
||
nethor Profil |
#3 · Zasláno: 12. 11. 2012, 10:13:53
panther:
Proměnné mohu být různých jmen, typu a množství. Předávat je jako parametr je hrozně přes ruku. Vpodstatě mi jde o to nahradit include_once $soubor; za LoadFile($soubor); ,
abych mohl veškerá ověření a akce vytáhnout do fce a nemusel je pokaždé psát znouvu: if(!neco){} elseif(!neco){} elseif(!neco){} ... else include_once $soubor; |
||
Časová prodleva: 11 let
|
0