Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: "Pamiętanie zmniennych" z funkcji rekurencyjnych.
Forum PHP.pl > Forum > PHP
envp
Mam taki problem, mam tablice przypuscmy taka:
  1. <?php
  2. $arrA = array();
  3. ?>

potem mam w skrycpie funkcje rekurencyjna (ktora wywoluje sama siebie, az do pozadanego skutku).
Funkcja wyswietla pare rzeczy, ale jednoczesnie oblicza pewne wspolczynniki, ktore powinienem zapisac wlasnie w tej tablicy $arrA. Jak wiadomo, gdy tablice zadeklaruje przed funkcja, do dostepu do niej nie bedzie w funkcji (przynajmniej z moich prob tak wywnioskowalem). Chcialem uzyc zmiennej globalnej, pewna osoba, ktora twierdzila ze jestem nieudacznikiem skoro sobie z tym nie moge poradzic bezd zmiennych globalnych i zmiennych globalnych nie powinno sie uzywac. Pytam wiec jak ten problem rozwiazac?
nospor
skoro juz nie chcesz uzywac globali to np. tak:

  1. <?php
  2. function fun($arrA){
  3. //cos tam robi
  4.  
  5. //teraz rekurencja
  6. $arrA = fun($arrA);
  7.  
  8. return $arrA;
  9.  
  10. }
  11.  
  12. $arrA = array();
  13. $arrA = fun($arrA);
  14. ?>

powinno dzialac. zamiast zwracac tablice mozna tez ją przekazywac do funkcji jako wskaźnik:
  1. <?php
  2. function fun(&$arrA){
  3. //cos tam robi
  4.  
  5. //teraz rekurencja
  6. fun($arrA);
  7.  
  8. }
  9.  
  10. $arrA = array();
  11. fun($arrA);
  12. ?>

tez chyba powinno dzilac winksmiley.jpg
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.