![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 227 Pomógł: 0 Dołączył: 13.06.2003 Skąd: rykowice Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, nadziałem się na mały problem i nie wiem jak go rozwiązać, oto prosty przykład
params to jest tablica np Kod Array ( [0] => wartosc [1] => wartosc1 [2] => cos ) Chcę by z automatu tablica stanowiła argumeny funkcji w taki sposób jak byśmy to pisali z palca czyli np:
nie
poratuje ktoś ? Ten post edytował Gligamesh 24.06.2012, 15:29:20 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
hmm argumenty to nie trasformersy, same się nie zmienią
zobacz tutaj: http://php.net/manual/en/function.func-get-args.php |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 22.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Pozwolę sobie stwierdzić, że nie ma możliwości aby wywołać funkcje z tablicą jako parametr, a odebrać w funkcji 3 różne argumenty.
Btw, jaki masz problem z przypisaniem poszczególnych elementów tablicy do zmiennych, przed wywołaniem albo w funkcji? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 227 Pomógł: 0 Dołączył: 13.06.2003 Skąd: rykowice Ostrzeżenie: (0%) ![]() ![]() |
skoro params jest tablicą to argument jest tylko jedn i nazwę sobie można nadać dowolną więc nie widzę sensu stosowania func_get_args() bądź czegokolwiek podobnego. Ponadto efekt ciągle taki sam, czyli tablica i jedna funkcja więcej.
Cytat Pozwolę sobie stwierdzić, że nie ma możliwości aby wywołać funkcje z tablicą jako parametr, a odebrać w funkcji 3 różne argumenty. bo nie chodzi o to by przekaząć tablicę tylko odpowiedno ją zmodyfikować tak by funkcja przyjeła kilka argumentów (tu chyba moja wina że niesprecyzowaniem na początku, wydało mi się to jasne) Cytat Btw, jaki masz problem z przypisaniem poszczególnych elementów tablicy do zmiennych, przed wywołaniem albo w funkcji? Przed jak widać spore inaczej bym nie zakłądał tematu..... wewnątrz teoretycznie żadnych ale nie mam zamiaru tego robić w każdej klasie. Innymi słowy szybciej, ładniej, czytelniej, funkcjonalniej Ten post edytował Gligamesh 24.06.2012, 16:05:44 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 227 Pomógł: 0 Dołączył: 13.06.2003 Skąd: rykowice Ostrzeżenie: (0%) ![]() ![]() |
Można prosić konkretniej ? Bo z tego co widzę to nie bardzo, zwłaszcza że mi zależy na samej funkcji nie całej klasie.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
W takim razie ReflectionFunction, ta sama metoda.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 227 Pomógł: 0 Dołączył: 13.06.2003 Skąd: rykowice Ostrzeżenie: (0%) ![]() ![]() |
Przekopałem to i z tego co widzę w nielicznych przykładach i tak jest wymagana deklaracja więc totalnie mija się to z celem (sztuka dla sztuki). Chyba że masz coś innego na myśli ale ani wiedzy w tym zakresie ani magicznej kuli nie mam ,więc prosiłbym o jakiś szerszy opis.
Ten post edytował Gligamesh 24.06.2012, 17:02:26 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chyba że masz coś innego na myśli ale ani wiedzy w tym zakresie ani magicznej kuli nie mam ,więc prosiłbym o jakiś szerszy opis. Ale masz manuala i podany link jak wywołać konstruktor klasy, gdzie argumenty są podane w tablicy. Skoro nie o konstruktor, a o metodę chodzi wystarczyło poświęcić tych 15 sekund na znalezienie ReflectionMethod::invokeArgs(object, array). Poza opisem masz nawet przykład obrazujący jak na dłoni jak tego użyć.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
rany julek
![]() call_user_func_array - masz tam przykłady... Ten post edytował zegarek84 24.06.2012, 22:17:35 -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 227 Pomógł: 0 Dołączył: 13.06.2003 Skąd: rykowice Ostrzeżenie: (0%) ![]() ![]() |
no i dla call_user_func_array faktycznie wystarczyło 15 sekund, i na to też się zdecydowałem. Dziękuje.
co do pozostałych sugestii: Cytat Ta funkcja jest obecnie nieudokumentowana z php mam bardzo mało styczności i raczej z musu. Wyraźnie napisałem że proszę o konkretniejszą informację, pewno nie bez powodu! Ten post edytował Gligamesh 24.06.2012, 22:50:35 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 20:23 |