Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zmiana własności, która jest tablicą przez magicznego __set
Forum PHP.pl > Forum > PHP > Object-oriented programming
mrWodoo
Witam, mam własność w klasie
Config {
protected $_data = [];
}

Jak mogę wpływać na tą tablicę przy użyciu magicznej metody __set?

Chodzi o to, że struktura tej tablicy jest wielowymiarowa (jeden klucz może wskazywać na tablicę, która ma kilka tablic itd.)

Chciałbym aby to wyglądało tak


  1. $config->indeksPierwszy['cos']['cos2'] = 10;
  2. co ma się równać
  3.  
  4. $this->_data['indeksPierwszy']['cos']['cos2'] = 10;


Magiczną metodę get już mam ale z setterem nie mogę sobiep poradzić ;(
Turson
http://www.php.net/manual/en/sdo.sample.getset.php
Example #7 się przyda

Pomijając, to że nie możesz ustawić wartości dla chronionej własności
mrWodoo
Cytat(Turson @ 18.06.2014, 20:58:10 ) *
http://www.php.net/manual/en/sdo.sample.getset.php
Example #7 się przyda

Pomijając, to że nie możesz ustawić wartości dla chronionej własności


Oczywiście wiem o tym, że nie mogę, ale chodziło mi jak bym to zrobił w środku klasy (dlatego posłużyłem się $this), dzięki.
by_ikar
Spłodziłem kiedyś coś takiego: https://gist.github.com/ikar/2e1f8f18d8f82a694d31 tutaj możesz tworzyć dowolną ilość zagnieżdżeń, co oczywiści przekłada się na zapotrzebowanie przez klasę dlatego że ona od razu buduje "drzewo". Można potem to wrzucić do jakiegoś cache czy coś..
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.