Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Klasy - automatyczne wywoływanie funkcji
Forum PHP.pl > Forum > PHP
-maciek-
Czy jest możliwość stworzenia nowego obiektu klasy i automatyczne wywołanie funkcji danej klasy na tym obiekcie?

Chodzi mi o coś takiego:
  1. <?php
  2.  
  3. class slowo
  4. {
  5. var $slowo;
  6.  
  7. function wyswietl($wyraz)
  8. {
  9. echo $wyraz;
  10.  }
  11. }
  12.  
  13. //i teraz chodzi oto aby v podac slowo ktore zostanie autom. wyswietlone przez wys
  14. ietl
  15. $nowy = new slowo(&#092;"czesc\");
  16. ?>


Moze jest to troche nie jasne biggrin.gif ale mysle ze sie polapiecie
rogrog
a słyszałeś o czymś takim jak konstruktor??

w php4 powinieneś nazwać konstruktor tak samo jak nazywa się klasa, a w php5 __costruct()
-maciek-
Nigdy się z tym niespotkałem sadsmiley02.gif
jest cos o tym w manualu to poczytałbym, a może przy okazji dalbys jakis przykład ?
.dragonfly
Wyglada to nastepujaco:

  1. <?php
  2. Class Foo
  3. {
  4. function Foo ()
  5. { 
  6. $this->jakasfunckja();
  7. } 
  8.  
  9. function jakasfunckja()
  10. { 
  11. // kod funkcji
  12. } 
  13. } 
  14. ?>


W php5

  1. <?php
  2. Class Foo
  3. {
  4. function __construct ()
  5. { 
  6. $this->jakasfunckja();
  7. } 
  8.  
  9. function jakasfunckja()
  10. { 
  11. // kod funkcji
  12. } 
  13. } 
  14. ?>


http://www.php.net/manual/en/language.oop4.php
http://www.php.net/manual/en/language.oop5.php
-maciek-
Dzieki oto chodzilo, reszte pozniej sobie gdzies doczytam.
bendi
Ja chcialem tylko dodac ze przy dziedziczeniu jezeli konstruktora nie ma to jest wywolywany ten z klasy rodzica np.
  1. <?php
  2.  
  3. class FajnaKlasa {
  4.  function FajnaKlasa( ) {
  5. $this->jakasFunkcja();
  6.  }
  7.  function jakasFunkcja(){}
  8. }
  9.  
  10. /*
  11. poniewaz konstruktor jest nadpisany trzeba go wywolac w konstruktorze dziecka
  12. */
  13. class SuperFajnaKlasa extends FajnaKlasa {
  14.  function SuperFajnaKlasa (){
  15. parent::FajnaKlasa();
  16.  }
  17. }
  18.  
  19. /*
  20. tutaj zostanie wywolany konstruktor rodzica 
  21. */
  22. class InnaFajnaKlasa extends FajnaKlasa {
  23.  function jakasMetoda(){}
  24. }
  25.  
  26. ?>
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.