![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 0 Dołączył: 11.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
stworzyłem klase pack w której znajduje się metoda pack() i unpack(). Niestety niemoge sobie poradzić z prtzekazywaniem nieograniczonej ilości argumentów do funkcji pack. Przedstawiam sposób jak chciałem tego dokonać :
Próbuje przy użyciu foreach" title="Zobacz w manualu php" target="_manual, func_get_args" title="Zobacz w manualu php" target="_manual połączyć kolejno pobierane argumenty i zapisać je w zmiennej oddzielając je ."," ale wtedy cała zmienna $str traktowana jest jako jeden argumen. Jak sobie z tym poradzić ? Pozrawiam. Ten post edytował Levabul 9.12.2005, 20:56:22 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przekazuj do funkcji jeden argument, ktory bedzie tablicą. A do tablciy mozesz wrzucac tyle zmiennych ile ci sie podoba
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 0 Dołączył: 11.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Niestety nadal niedziała (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Wywala się error
Cytat Warning: pack() [function.pack]: Type n: too few arguments in E:\Programy\WebServ\httpd-users\ss\include.php on line 16 Czyli tak jakby funkcja pack() niezwracała uwagi na przecinki podczas rozdzielania zmiennej $data na poszczegulne argumenty. Oto kod:
Ten post edytował Levabul 10.12.2005, 14:37:04 |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
o ile wiem to jesli deklarujesz ze funkcja ma jeden argument, to mozesz jej podac tylko jeden argument. Taki ci nawet wyskakuje error. Czemu nie chcesz tego co ci mowilem? zapodawaj do funkcji jeden argument bedacy tablica. co za roznica?
|
|
|
![]() ![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 562 Pomógł: 15 Dołączył: 8.08.2003 Skąd: Denmark/Odense Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 0 Dołączył: 11.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
@nospor - nie wiem czy do funkcji pack można przekazywać jedną tablice zamiast poszczególnych argumentów.
@bregovic - takie rozwiązanie nic niedaje ponieważ join łączy wszystko w jeden string i niemożna tego wykożystac w funkcji pack jako kilka argumentów Rozwiązanie otrzymałem na innym forum. Tym czego mi brakowało była funkcja eval (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Wiem że mało to wydajne ale trudno ... |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
|
|
|
![]() ![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 562 Pomógł: 15 Dołączył: 8.08.2003 Skąd: Denmark/Odense Ostrzeżenie: (0%) ![]() ![]() |
Levabul: Nie rób sobie na złość, nie używaj eval(). Nie zrozumiałem że chcesz użyć argumentów do wywołania innej funkcji. W takim razie użyj call_user_func_array" title="Zobacz w manualu php" target="_manual():
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 0 Dołączył: 11.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
@Ociu Pewnie ociu ze do metody można dać jako argument tablicę tyle że ja chcę tę tablice wykorzystać póżniej jako KILKA ARGUMENTÓW w funkcji pack () znajdującej się wewnątrz tej metody (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
@Bregovic dzięki, sprawdze czy działa wieczorem bo teraz do sklepu musze jechać ... (wydaje mi się że powinno działąć (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) Ten post edytował Levabul 11.12.2005, 16:43:05 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 07:35 |