![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 3.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Zakładając, że jest dany obiekt z poszczególnymi metodami, czy istnieje sposób by sprawdzić w metodzie, czy metoda ta została wywołana z poza obiektu albo z obiektu?
Ten post edytował Magan 3.09.2014, 00:16:46 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
chyba tylko debug_backtrace
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 67 Pomógł: 4 Dołączył: 23.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Można to ewentualnie rozwiązać jawnie za pomocą parametru metody, w którym podasz, skąd ją wywołujesz.
-------------------- Notatnik programisty
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 60 Dołączył: 25.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
kolega Magan chyba nie chce sterować przepływem kodu w metodzie zależnie od tego, czy została wywołana z innej metody tego obiektu, bądź spoza niego? ^^
![]() -------------------- there is much to be learned
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 3.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie tak
![]() ![]() ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Zrób "fasadę" dla metody poprzez ukrycie żądanej metody poprzez private i zrobienie innej dostępowej public. W ten sposób wew. możesz korzystać z prywatnej metody a z zewnątrz poprzez "fasadę" czyli np. doAction('nazwa_metody');
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 60 Dołączył: 25.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
hehe Pyton_000 mnie ubiegł
![]() ------------------------------------- skoro potrzebujesz różnej logiki, to lepiej napisać więcej krótszych metod. Taki przykład: powiedzmy, że chcesz coś zrobić z otrzymanym argumentem, ale jeśli został przekazany z zewnątrz, to trzeba go najpierw zwalidować, a jeśli z innej wewnętrznej metody klasy to nie trzeba walidować, bo wtedy zawsze jest poprawny. No to tak jakoś to można zrobić:
Ten post edytował irmidjusz 4.09.2014, 08:38:04 -------------------- there is much to be learned
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 3.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za wskazówki.
![]() ![]()
Tak to pokrótce wygląda, pisane z palca, mieć się na baczności. PS. Przydał by się tabulator tutaj albo jestem nie uświadomiony ![]() Ten post edytował Magan 4.09.2014, 22:12:28 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 16:14 |