Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]kontruktor w php4
Forum PHP.pl > Forum > Przedszkole
gox
czy konstruktor w php4 mozna cos zwracac?
tzn bledu niebedzie, ale jaka zwracana wartosc mam niby odczywac?
Crozin
Konstruktor nie może nic zwracać i tyle.
dr_bonzo
To NIE MA SENSU.

Bo po co tworzysz obiekt jak od razu chcesz sie go pozbyc?

  1. <?php
  2. $wartosc = new Klasa();
  3.  
  4. // class Klasa {
  5. function Klasa()
  6. {
  7.  return 3;
  8. }
  9. ...
  10. }
  11. ?>

i $wartosc == 3;
to bo po ci ta klasa, i tworzenie obiektu?
gox
konstruktor to (prawie) zwykla metoda klasy, metody zwracaja wartosci i nie powoduje to umierania obiektu.. nie napisalem ze chce sie go pozbyc...
dzieki za pomoc.
dr_bonzo
Skoro wszystkie metody zwracaja wartosc podana w return to co zostanie wyswietlone przez ten skrypt?
  1. <?php
  2. class Klasa
  3. {
  4. var $x = 1;
  5. function Klasa()
  6. {
  7. return "i niby to ma dzialac?";
  8. }
  9.  
  10. function __destruct()
  11. {
  12. print( "Obiekt jest usuwany<br />" );
  13. }
  14.  
  15. }
  16.  
  17. $x = new Klasa();
  18. print_r( $x );
  19. ?>


Kod
"i niby to ma dzialac?"
?

Konstruktor jest specjalna metoda, ktora zwraca ci ZAWSZE [pomijam sytuacje gdy rzucisz w niej wyjatek] obiekt danej klasy, i ignoruje to co zwracasz przez return.

Cytat
tzn bledu niebedzie, ale jaka zwracana wartosc mam niby odczywac?

No wlasnie nie odczytasz bo nie jest zwracana.

Cytat
Cytat
Bo po co tworzysz obiekt jak od razu chcesz sie go pozbyc?

nie napisalem ze chce sie go pozbyc...


Ha, bo nie masz wiedzy, a twoje wypowiedzi wskazuja wlasnie na to ze chcesz sie tego obiektu pozbyc, dlaczego?

  1. <?php
  2. $k = new Klasa(); // gdzie w konstruktorze masz: return 777;
  3. print( $k ); // tu, wg ciebie powinno wypisac 777
  4. // a tu!! poniewaz stworzyles obiekt klasy Klasa i NIE jest on przypisany do zadne
    j zmiennej [referencji] to jest usuwany przez PHP
  5. //. ... dalsza czesc kodu
  6. ?>
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.