Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Argumenty funkcji z tablicy
...
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 1.10.2006

Ostrzeżenie: (0%)
-----


Witam, mam pewien problem. Chciałbym wykonać funkcję której argumentami są elementy tablicy.
  1. <?php
  2. $argumenty = Array("argument1", "argument2", "argument3", (...));
  3.  
  4. function f($arg1, $arg2, $arg3, (...) ){}
  5. ?>

Wiem, że mogę podać 1 parametr który jest tablicą, ale nie o to mi chodzi. Zapewne odpowiedź jest bardzo prosta, ale nie mogłem na nią wpaść od rana ;D

Do czego mi to? Ucze się pisać obiektowo i tworze taki mały framework. Problem jest taki że nie wiem ile zostanie dodanych argumentów w tablicy, a pętla nie bardzo tu pasuje. Dodatkowo nie chcę używać func_get_args() lub &.
Wiem, że jest to rozwiązane np w frameworku CodeIgniter (parametry akcji w kontrolerach)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mls
post
Post #2





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(... @ 3.07.2008, 00:07:32 ) *
Witam, mam pewien problem. Chciałbym wykonać funkcję której argumentami są elementy tablicy.
  1. <?php
  2. $argumenty = Array("argument1", "argument2", "argument3", (...));
  3.  
  4. function f($arg1, $arg2, $arg3, (...) ){}
  5. ?>

Wiem, że mogę podać 1 parametr który jest tablicą, ale nie o to mi chodzi. Zapewne odpowiedź jest bardzo prosta, ale nie mogłem na nią wpaść od rana ;D


  1. <?php
  2. $argumenty = array('argument1', 'argument2', 'argument3');
  3. call_user_func_array('jakasfunkcja', $argumenty);
  4.  
  5. function jakasfunkcja ()
  6. {
  7. $argumenty = func_get_args()
  8. print_r($argumenty);
  9. }
  10. ?>


Ten post edytował mls 2.07.2008, 23:59:19
Go to the top of the page
+Quote Post
...
post
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 1.10.2006

Ostrzeżenie: (0%)
-----


Cytat(mls @ 3.07.2008, 00:59:06 ) *
  1. <?php
  2. $argumenty = array('argument1', 'argument2', 'argument3');
  3. call_user_func_array('jakasfunkcja', $argumenty);
  4.  
  5. function jakasfunkcja ()
  6. {
  7. $argumenty = func_get_args()
  8. print_r($argumenty);
  9. }
  10. ?>

Dzięki. O to mi chodziło. O funkcję call_user_func_array(). Dziwne, że jej w manualu nie znalazłem...
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: 5.10.2025 - 21:33