Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak sprawdzić ile dana funkcja przyjmuje argumentów?
.radex
post
Post #1





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


Jak w temacie.

Dla przykładu:

Jeśli taka funkcja by się zwała function_arguments, to dla funkcji:

function cos($a,$b,$c){ /*...*/ }

wykonanie function_arguments("cos") ma zwracac 3.



Pozdrawiam.
Go to the top of the page
+Quote Post
Cezar708
post
Post #2





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


func_num_args()
Go to the top of the page
+Quote Post
Cotter
post
Post #3





Grupa: Zarejestrowani
Postów: 57
Pomógł: 12
Dołączył: 6.01.2008
Skąd: Wrocław

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


Podana przez Cezara708 func_num_args() nie podaje ile argumentów przyjmuje funkcja tylko ile argumentów zostało przesłanych do funkcji.

Przykład:
Kod
   function ileArgumentow()
    {
        echo func_num_args();
    }
    
    ileArgumentow(); // 0
    ileArgumentow(1,2); // 2
    ileArgumentow('a',array(1,2,3),'b'); // 3


W celu ustalenia liczby parametrów poczytaj sobie o Refleksjach:
http://www.php.net/manual/pl/language.oop5.reflection.php
W szczególności o ReflectionFunction i metodach:

public int getNumberOfParameters()
public int getNumberOfRequiredParameters()

Jeszcze nigdy tego nie potrzebowałem więc nie wiem jak to dokładnie działa.
Go to the top of the page
+Quote Post
.radex
post
Post #4





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


dzięki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

PS. sorka, że odświerzyłem temat, ale zapomniałem o nim (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Nickesh
post
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 3.09.2005

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


Strasznie ciężko się do tego dokopać.
Ale warto, bo Reflections są zaje...te :)
Dzięki - podobnie, jak mój przedmówca - spóźnione, ale szczere :D
Go to the top of the page
+Quote Post

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: 24.12.2025 - 15:55