![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 180 Pomógł: 0 Dołączył: 24.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw podam kod:
Klasa String:
Klasa Coment:
Odwołanie:
Zastosowałem tutaj IMHO brzydkie rozwiązanie z użyciem metody __call. Innym rozwiązaniem jest zastosowanie public $title. Wówczas odwoływalibyśmy się w ten sposób:
Czyli bez użycia title(). Jednak chyba nie jest to zbyt dobry pomysł ponieważ zmienna będzie publicznie dostępna, a takto mamy tylko dostęp do jej metod (title->set, title->length, etc.), więc nie można jej np. usunąć z zewnątrz. Żeby nie zakładać nowego tematu napiszę, że brakuje mi bardzo przeładowywania metod w taki oto sposób:
Jestem ciekaw jak sobie radzicie z tym problemem. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 362 Pomógł: 0 Dołączył: 18.02.2004 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
Skoro chcesz się odwoływać do tego w ten sposób:
$cm->title->lenght(); No to jakby na to nie patrzeć 'title' jest własnością publiczną i żadna kwestia bezpieczeństwa nie jest naruszona. Jest to wprawdzie przeciw zasadzie hermetyzacji, no ale skoro koniecznie tego potrzebujesz to chyba innego wyjścia nie ma. Ten post edytował matid 2.07.2005, 20:11:41 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 11:15 |