Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wywołanie __get i __set przy pomocy tabel
maf2
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 6.02.2007
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Witam,
Napisałem taki prosty kod i nie wiem jaki błąd w rozumowaniu robię.
Wiem, że __get jest wywoływane, gdy próbujesz pobierać wartość z nieistniejącego atrybutu a __set jest wywoływane, gdy próbujesz ustawiać wartość dla nieistniejącego atrybutu.
I nie rozumie dlaczego takie zapytanie $this->propertyTable['addressid'] = 2; nie powoduje wywołania set.
Proszę o jakiś prosty przykłada jak pracować z tablicami przy metodach __get() i __set()

  1. <?php
  2. abstract class foo {
  3.    
  4.    
  5.    protected $propertyTable = array();
  6.    
  7.  
  8.  
  9.  
  10. function __get($n) {
  11.        echo '<br>get: '.$n.'<br>';
  12.  
  13.    }
  14.    
  15.    function __set($n, $v) {
  16.        echo '<br>set: ';
  17.  
  18.  
  19.  
  20. }
  21. }
  22. class a extends foo{
  23.  
  24.  
  25.  
  26. public function __construct($b){
  27.    $this->propertyTable['addressid'] = 2;
  28.    
  29.    
  30.    }
  31.    }
  32.  
  33. $a = new a(2);
  34. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 12:42