Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> funkcja dostepowa, __get, __set
d3iv
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 31.07.2005

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


hmm.. w zasadzie chodzi o to ze wartosc ktora zostaje przekazana do atrybutu powinna byc przefiltrowana przez __get w calej klasie atrybut moze przyjmowac jedynie wartosci wieksze od 100 a tak sie nie dzieje :| __get przyjmuje wszytkie wartosci ktore sa przypisane do atrybutu... dzieki z gory za pomoc..
  1. <?php
  2.  
  3. class test
  4. {
  5.  
  6.  var $atrybut;
  7.  
  8. function __get($nazwa)
  9. {
  10. return $this->$nazwa;
  11. }
  12.  
  13. function __set($nazwa, $wartosc)
  14. {
  15. If ($wartosc > 100)
  16. $this->$nazwa = $wartosc;
  17. else
  18. $this->$wartosc = 'Blad!';
  19. }
  20.  
  21. }
  22.  
  23. $spr = new test();
  24. $spr->atrybut = 2;
  25. echo $spr->atrybut;
  26.  
  27. ?>


16.08.2005----------------------------------------------->

odp. Dowiedzialem sie z innych zrodel ze poprostu nie moze byc zadeklarowany atrybut poniewaz magiczne funkcje takie jak __set __get czy __call pracuja na nieistniejacych atrybutach :] czyli po usunieciu var $atrybut wszystko bedzie dzialac .. moze sie komus kiedys przyda tongue.gif pozdro

Ten post edytował d3iv 16.08.2005, 09:26:06
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 03:00