Stránka 1 z 1

Dostupnost proměnné

Napsal: ned 6. bře 2011, 15:57
od KapaCZ
Mám funkci parse($filename){}

V které používám proměnnou $data.

Ta je definovaná v jiném souboru, který se automaticky načítá.
Jak mám udělat, aby funkci došlo, kde má brát $data?

Ted mi to píše Undefined variable: data.

Re: Dostupnost proměnné

Napsal: ned 6. bře 2011, 18:28
od OndraSter
Nemáš problém s viditelností proměnných vůči { }?

Re: Dostupnost proměnné

Napsal: pon 7. bře 2011, 08:13
od arxeiss
Určitě. Ve funkci můžeš vidět pouze ty proměnné, které si předáš parametrem, popř ve funkci napiš
global $data;
v OOP je to to samé, tak akorát můžeš použít proměnné té třídy přes to $trida->promenna

Re: Dostupnost proměnné

Napsal: pon 7. bře 2011, 17:16
od KapaCZ
mám funkci __autoload, kde se načítá soubor kde jsou ty $data.

Mám:
class Template {

parse($filename){global $data;}

}

Ale ty $data se tam prostě nedostanou. A ano __autoload proběhne dřív než funkce parse()

Re: Dostupnost proměnné

Napsal: pon 7. bře 2011, 17:20
od arxeiss
Absolutně jsem se do toho zamotal... Popisuješ toho strašně málo, a jsem totálně mimo

Re: Dostupnost proměnné

Napsal: úte 8. bře 2011, 20:10
od KapaCZ
NEvim co bych měl ještě připsat. Můj postřeh je, že když soubor, který obsahuje $data includuji mimo jakoukoliv funkci, tak to jde, ale jakmile je to v té funkci __autoload, tak se k té proměnné $data nedostanu.

Re: Dostupnost proměnné

Napsal: úte 8. bře 2011, 21:26
od arxeiss
Aha, no to je logické. Všechny proměnné, které si vytvoříš v nějaké funkci jsou po zkončení té funkce zapomenuty. Asi by sis měl přečíst nějaké základy znova.
Jen tak BTW: toto je stejné ve všech programovacích jazycích o kterých jsem slyšel

Re: Dostupnost proměnné

Napsal: úte 8. bře 2011, 22:08
od KapaCZ
Aha no to mi nějak nedošlo :)
tak to budu muset udělat jinak.