Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] wywołanie funkcji w funkcji
Forum PHP.pl > Forum > Przedszkole
adam83
Witam

Mam takie pytani odnośnie użycia zagnieżdżonych funkcji na stronie,
Podam przykład..
Takie proste menu, po wyborze opcji 'dodaj' podane przykładowe dane użytkownika przesyłam do funkcji dodaj_usera zawartej w dodatkowym dołączonym arkuszu z funkcjami

  1.  
  2. switch($menu)
  3. {
  4. case 'dodaj':
  5.  
  6. $user = 'jasio';
  7. $haslo = 'haslo';
  8. $haslo2 = 'haslo';
  9. $email = 'jasio@wp.pl';
  10.  
  11. $komunikat = dodaj_usera($user, $haslo, $haslo2, $email);
  12. echo $komunikat;
  13.  
  14. break;
  15. }
  16.  


Funkcja pobiera 4 parametry i dodaje je do bazy danych kończąc działanie komunikatem odnośnie powodzenia, lub nie tej operacji..

  1. function dodaj_usera($user, $haslo, $haslo2, $email)
  2.  


No i właśnie, napisałem ta funkcję na piechotę, sprawdza ona wiele warunków, długości podanych zmiennych, ich wcześniejsze wystepowania w bazie, format e-maila, koduje hasło.. i dopiero na końcu jeśli nie było zastrzeżeń dodaje do bazy. Chciałem pewne części tego kodu sprawdzającego użyć dla innych funkcji..

Stąd moje pytanie, czy wywołując jedną funkcję - w tym przypadku dodającą użytkownika, ta funkcja może wewnątrz siebie samej wywoływać pewną ilość innych funkcji wewnętrznych i w zależności od ich powodzenia kończyć się odpowiednim komunikatem?

Coś takiego np.

  1. function dodaj_usera($user, $haslo, $haslo2, $email){
  2.  
  3. $krok1 = sprawdz_dlugosc_loginu($user);
  4. // jezeli ok, idz dalej, jesli nie przerwij i ustaw $komunikat = "nie dodalem uzytkownika, login za krótki"
  5. $krok2 = sprawdz_poprawnosc_hasla($haslo);
  6. // jezeli ok, idz dalej, jesli nie przerwij i ustaw $komunikat = "zle haslo"
  7. $krok3 = sprawdz_skladnie_email($email);
  8. .....
  9. .......
  10. .......
  11. return $komunikat;
  12.  


Czy takie budowanie funckji na podstawie wcześniej zdefiniowanych podfunkcji jest dobrym pomysłem?

Pozdrawiam
neverever
Jeżeli masz zdefiniowane jakieś funkcje realizujące konkretne zadania, to nic nie stoi na przeszkodzie by je wykorzystać w innych funkcjach. Nawet jest to wskazane z uwagi na to, że ogranicza powielanie zbędnego kodu.
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.