Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Łączenie argumentów funkcji
Levabul
post
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ć :
  1. <?php
  2.  
  3. class Pack {
  4.  
  5. public $pack;
  6.  
  7.  
  8. public function __construct($str = false) {
  9. if($str) {
  10. $this -> pack = $str;
  11. }
  12. }
  13.  
  14. public function pack() {
  15. foreach (func_get_args() as $arg) {
  16. $str .= $arg.", ";
  17. }
  18. $str = substr($str, 0, strlen($str)-1);
  19.  
  20. $this -> pack = pack($str);
  21. }
  22.  
  23. public function unpack($strFormat) {
  24. return unpack ($strFormat, $this -> pack);
  25. }
  26. }
  27.  
  28. ?>


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
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?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 05:28