Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kilku poziomowy __get
Moli
post
Post #1





Grupa: Zarejestrowani
Postów: 662
Pomógł: 45
Dołączył: 26.03.2007
Skąd: Warszawa

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


Mam w klasie tablicę o takiej wartośc
Kod
Array (
'imie' => Array ( 'pierwsze' => 'Michal' , 'drugie' => 'Jan' ) ,
'nazwisko => Array ( 'rodowe' => 'Kowalski' ) ,
)

i teraz chce w do jej elementów odwoływac się poprzez
Kod
$this->imie->pierwsze (zwroci Michał)


Jak dobrze to rozwiązać ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Whisller
post
Post #2





Grupa: Zarejestrowani
Postów: 77
Pomógł: 5
Dołączył: 29.03.2006
Skąd: Poznań

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


@Moli
Nie ma możliwości odwołania się w taki sposób, przynajmniej mi osobiscie nic na ten temat nie wiadomo.
Ponieważ odwołanie typu $myClassObject->first->second jest traktowane jako odwołanie do zmiennej second obiektu first.
Więc zapis
  1. <?php
  2. class MyClass
  3. {
  4. public function __get($name)
  5. {
  6.  echo 'Name: '.$name;
  7.  }
  8. }
  9.  
  10. $oClass = new MyClass();
  11. $oClass->first->second;
  12. ?>


Zwróci nam
//--
Name: first
Notice: Trying to get property of non-object in PATH on line 13
//--
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: 13.10.2025 - 09:05