Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Tworzenie dynamicznych właściwości
Forum PHP.pl > Forum > PHP > Object-oriented programming
angel2953
Chciałem się dowiedzieć czy istnieje możliwość dynamicznego dodawania właściwości do klasy już po stworzeniu jej instancji czyli:

  1. <?php
  2. class Test {
  3. static public $a;
  4.  
  5. protected function __construct() {
  6. $this->a = 'jestem a';
  7. }
  8.  
  9. public function add( $name, $value ) {
  10. // dalej nie wiem jak
  11. }
  12. }
  13.  
  14. $klasa = new Test;
  15. //wartosc a
  16. echo $klasa->a;
  17. //dodajemy b
  18. $klasa->add( 'b', 'jestem b' );
  19. wartosc b
  20. echo $klasa->b;
  21. ?>


czy takie cos jest w ogóle możliwe :?:
bigZbig
Jest ale z uzyciem magicznych metod __get i __set
angel2953
Cytat(bigZbig @ 2.08.2006, 15:10 ) *
Jest ale z uzyciem magicznych metod __get i __set

A możesz podać jakiś konkretny przykład bo tego z manuala za bardzo nie rozumiem...
mike
Cytat(bigZbig @ 2.08.2006, 15:10 ) *
Jest ale z uzyciem magicznych metod __get i __set

Nie koniecznie.

Można tak:
  1. <?php
  2.  
  3. class Test
  4. {
  5. public $varA = null;
  6.  
  7. public function __construct()
  8. {
  9. $this->varA = 'jeden';
  10. }
  11. }
  12.  
  13. $test = new Test();
  14.  
  15. echo $test->varA;
  16.  
  17. $test->varB = 'dwa';
  18.  
  19. echo $test->varB;
  20.  
  21. ?>


---added---
~angel2953 poczytaj też ten wątek: Iterator nie implementujący interfejsu Iterator
angel2953
dzięki, trochę mi to rozjaśniło jak mam podejść do problemu :]
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.