func_num_args

(PHP 4, PHP 5, PHP 7)

func_num_argsLiefert die Anzahl der an eine Funktion übergebenen Argumente

Beschreibung

func_num_args ( void ) : int

Ermittelt die Anzahl der an eine Funktion übergebenen Argumente.

Diese Funktion kann zusammen mit func_get_arg() und func_get_args() genutzt werden, um Funktionen mit einer variablen Anzahl von Argumenten zu implementieren.

Rückgabewerte

Liefert die Anzahl der Argumente, die an die aufgerufene Funktion übergeben wurden.

Changelog

Version Beschreibung
5.3.0 Diese Funktion kann nun auch in Parameterlisten genutzt werden.
5.3.0 Wird diese Funktion aus dem äußeren Geltungsbereich einer Datei aufgerufen, die durch den Aufruf von include oder require aus einer Funktion heraus inkludiert wurde, wird nun eine Warnung erzeugt, und -1 zurückgegeben.

Fehler/Exceptions

Die Funktion generiert eine Warnung, wenn sie von außerhalb einer benutzerdefinierten Funktion aufgerufen wird.

Beispiele

Beispiel #1 func_num_args() Beispiel

<?php
function foo()
{
    
$numargs func_num_args();
    echo 
"Anzahl der Argumente: $numargs\n";
}

foo(123);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Anzahl der Argumente: 3

Beispiel #2 func_num_args() Beispiel vor und nach PHP 5.3

test.php
<?php
function foo() {
    include 
'./fna.php';
}

foo('Erstes Argument''Zweites Argument');
?>

fna.php
<?php

$num_args 
func_num_args();
var_export($num_args);

?>

Ausgabe vor PHP 5.3:

2

Die Ausgabe in PHP 5.3 und später ist ähnlich wie:

Warning: func_num_args():  Called from the global scope - no function
context in /home/torben/Desktop/code/ml/fna.php on line 3
-1

Anmerkungen

Hinweis:

Da diese Funktion bei der Ermittlung der Parameterdetails von dem aktuellen Ausführungskontext abhängt, kann sie in PHP-Versionen vor 5.3.0 selbst nicht als Funktionsparameter genutzt werden. Wenn Sie ihre Ergebnisse tatsächlich weitergeben müssen, so müssen Sie diese zunächst einer Variablen zuweisen und dann diese Variable übergeben