Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wszystkie zmienne do funkcji
Forum PHP.pl > Forum > PHP
phoenix84
Jak w temacie...
co zrobic by nie pisac:
  1. function ()
  2. {
  3. global $var;
  4. global $var2;
  5. ...
  6. }


tylko zeby moc korzystac ze wszystkich zmeinnych skryptu?
dobrze by bylo jakby dzialalo rowniez wewnatrz eval ()... bo w sumie liczba linijek zaczynajacych sie od "global" rosnie niemilosiernie smile.gif

pozdrawiam,

k.
thek
Jeśli chcesz, by owe zmienne po zakończeniu funkcji były dostępne w reszcie skryptu to czemu ich do niego nie zwrócisz? Nie rozumiem po co ludzie używają globali, skoro można dane wrzucać do funkcji jako parametry (w tym referencje) i zwracać je w dowolnej postaci. Sens globali w takim wypadku staje pod znakiem zapytania. Na dodatek to rozwiązanie jest o niebo bezpieczniejsze niż globale.
varez
Cytat
bo w sumie liczba linijek zaczynajacych sie od "global" rosnie niemilosiernie

thek dobrze gada..

jeżeli globale to Twój chleb powszedni to proponuję poczytać jakieś tutoriale [jeszcze raz?]
darko
Cytat(phoenix84 @ 8.04.2010, 23:12:20 ) *
Jak w temacie...
co zrobic by nie pisac:
  1. function ()
  2. {
  3. global $var;
  4. global $var2;
  5. ...
  6. }


tylko zeby moc korzystac ze wszystkich zmeinnych skryptu?
dobrze by bylo jakby dzialalo rowniez wewnatrz eval ()... bo w sumie liczba linijek zaczynajacych sie od "global" rosnie niemilosiernie smile.gif

pozdrawiam,

k.

Nie twórz funkcji laugh.gif
phoenix84
chyba nie wyrazilems sie dosc jasno...

powiedzmy, ze chce wyslac do funkcji 1000 roznych zmiennych... no rozumeim ze powinno sie przez argumenty... ale kto spamieta ich kolejnosc przy wywolywaniu?

caly problem polega na tym, ze duza czesc skryptow mam w mysql (CMS)... no i zeby skorzystac z jakiejs zmiennej to musze uzywac globala... no i w niektorych plikach mam juz ponad 100 linijek z globalami... wszystko fajnie... bo dziala... ale moze istnieje inny sposob... by nie bylo takiego cyrku?

Cytat
Jeśli chcesz, by owe zmienne po zakończeniu funkcji były dostępne w reszcie skryptu to czemu ich do niego nie zwrócisz? Nie rozumiem po co ludzie używają globali, skoro można dane wrzucać do funkcji jako parametry (w tym referencje) i zwracać je w dowolnej postaci. Sens globali w takim wypadku staje pod znakiem zapytania. Na dodatek to rozwiązanie jest o niebo bezpieczniejsze niż globale.


nie zrozumiales... ja nie chce pobrac zmiennej na trasie funkcja->skrypt (choc tez by mi sie przydalo jak zwrocic wiecej niz jeden element biggrin.gif)... ale chce na trasei skrypt->funkcja... bo jedyne znane mi sposoby to parametry lub globale... ale oba maja te wade, ze trzeba kazda zmienna wypisac osobno...

pozdrawiam,

k.
tehaha
skoro to aż taka duża ilość to może wsadź te zmienne do tablicy(array) wtedy przekażesz to funkcji jedną tablicę i zwrócisz też jedną tablicę, a operacje będziesz sobie wykonywał w pętli
thek
Jeśli nie znasz liczby parametrów czy większej ilości rzeczy, to najbezpieczniej przepychać do funkcji, oraz wyciągać z niej, obiekt lub tablicę. Widoczne jest jako jeden parametr, ale ma niespończona liczbę elementó składowych. Może to być nawet obiekt/tablica pusty.
phoenix84
te sposoby znalem... ale i tak nie pomoga... no ale moze to przypadek beznadziejny smile.gif ze po prostu trzeba stawiac te globale

wiekszosc skryptow jest w plikach... no i tam sa setki roznych, przeroznych zmeinnych...

no i teraz czesc skryptow jest z mysql... i one czasem musza po prostu skorzystac ze zmiennych tworzonych wczesniej... w sumie na klasach to nie glupie... ale nie wyobrazam soebi przebudowania teraz wszystkiego od nowa (kilka zdrowych tysiecy linii kodu)... i rosnie (bo to skrypt takiego CMSa na ktorym stoi kilka serwisow, wiec wszystkie by trzeba bylo przebudowac biggrin.gif)... wiec poki co niewykonalne... winksmiley.jpg

szukalem innego sposobu na wciagniecie wszystkich zmiennych jedna komenda, a nie kazdej z osobna... ale jak nie ma to nie ma... winksmiley.jpg

dzieki za pomoc...

k.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.