Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak sprawdzić ile dana funkcja przyjmuje argumentów?
Forum PHP.pl > Forum > PHP
.radex
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.
Cezar708
func_num_args()
Cotter
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.
.radex
dzięki winksmiley.jpg

PS. sorka, że odświerzyłem temat, ale zapomniałem o nim tongue.gif
Nickesh
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
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.