Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Proste pytanie z OOP, widoczność funkcji
Forum PHP.pl > Forum > Przedszkole
maniak11
Witam , mam mały problem z widocznością funkcji, (początkuję z OOP). Otóż mam funkcję jakąś

  1. function test ()
  2. {
  3. return $cośtam;
  4. }
  5.  
  6. i potem klase
  7.  
  8. class jakasklasa
  9. {
  10.  
  11. public function test2()
  12. {
  13. $zmienna = test();
  14.  
  15. }
  16.  
  17. }


Moje pytanie brzmi jak można wykorzystać funkcję spoza klasy w klasie (w tym przypadku funckję test() )? Jest to możliwe? Bo w powyższym przykładzie to oczywiście nie zadziała.

Pozdrawiam
Puciek
A to nowosc ze takie cos nie zadziala
mls
No, nie zadziała. Bo nigdzie nie ma zdefiniowanej zmiennej $cośtam... winksmiley.jpg
Puciek
Cytat(mls @ 2.03.2010, 17:45:39 ) *
No, nie zadziała. Bo nigdzie nie ma zdefiniowanej zmiennej $cośtam... winksmiley.jpg
Widze ze w tym wypadku wybor maka to nie z powodu na kolor obudowy. Logika podpowiadalaby ze jak nie wiesz to nie mow
maniak11
Zadziała zadziała, sorki panowie, miałem zupełnie gdzie indziej błąd przez który wyświetlała mi się pusta strona więc pomyślałem że w ciele klasy nie widać funkcji na zewnątrz klasy, mój błąd, dzięki za podpowiedź.
mls
Cytat(Puciek @ 3.03.2010, 01:41:19 ) *
Widze ze w tym wypadku wybor maka to nie z powodu na kolor obudowy. Logika podpowiadalaby ze jak nie wiesz to nie mow


A co ma srebrny kolor obudowy do rzeczy? Logika podpowiadałaby, że jeśli nie masz nic mądrego do napisania, to po prostu milcz a nie ośmieszaj się takimi wypowiedziami.
A jeśli nie wiesz czym jest ironia, odsyłam do słownika.
blooregard
Jeśli chodzi o samą widoczność f-cji w klasach, to taka składnia jak najbardziej działa:
  1. function pokazSieWKlasie() {
  2. echo "To ja, funkcja";
  3. }//
  4.  
  5. class Test {
  6. public function __construct() {
  7. pokazSieWKlasie();
  8. }//
  9. }
  10.  
  11. $test = new Test();

Rezultat:
Cytat
To ja, funkcja

Co zresztą wynika z manuala:
Cytat
Każdy poprawny kod może być użyty wewnątrz funkcji, łącznie z definicjami innych funkcji i klas.

( http://pl2.php.net/manual/pl/functions.user-defined.php )

Jeśli chodzi o ten konkretny przykład usera @maniak11, to oczywiście brakuje wyświetlenia czegokolwiek, co mogło sprawiać wrażenie nie-działania (o, jakie fajne słowo smile.gif )
nospor
@mls nazwa zmiennej $cośtam miała sugerowac, ze tam jest cokolwiek a nie dosłownie niezdefiniowana zmienna $costam
Puciek zaś swoim zdaniem o kolorze maka sugerował zupełnie coś innego czego ty raczej nie zrozumiałeś a mi nie nie wypada powtarzać winksmiley.jpg

No ale ja tu w sprawie formalnej - przenosze.
mls
Cytat(nospor @ 3.03.2010, 10:34:31 ) *
@mls nazwa zmiennej $cośtam miała sugerowac, ze tam jest cokolwiek a nie dosłownie niezdefiniowana zmienna $costam
Puciek zaś swoim zdaniem o kolorze maka sugerował zupełnie coś innego czego ty raczej nie zrozumiałeś a mi nie nie wypada powtarzać winksmiley.jpg


Bez obaw, doskonale zrozumiałem o co mu chodziło winksmiley.jpg Ale ja widzę, że Wy nie rozumiecie mojego posta jednak winksmiley.jpg
Ale... nie ma już sensu wdawać się w jakieś dyskusje nie związane z tematem wątku wobec tego z mojej strony koniec OT 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.