(PHP 4, PHP 5, PHP 7)
func_num_args — Retourne le nombre d'arguments passés à la fonction
Récupère le nombre d'arguments passés à la fonction.
func_get_arg() peut être utilisé conjointement à func_num_args() et func_get_args() pour permettre aux fonctions utilisateurs d'accepter un nombre variable d'arguments.
Retourne le nombre d'arguments passés à la fonction utilisateur courante. function.
Version | Description |
---|---|
5.3.0 | Cette fonction peut maintenant être utilisée dans des listes de paramètres. |
5.3.0 | Si cette fonction est appelée dans un fichier inclus avec include ou require logé dans une fonction, elle génèrera une alerte et retournera -1. |
Génère une alerte si elle est appelée hors d'une fonction utilisateur.
Exemple #1 Exemple avec func_num_args()
<?php
function foo()
{
$numargs = func_num_args();
echo "Nombre d'arguments : $numargs\n";
}
foo(1, 2, 3); // affiche ''
?>
L'exemple ci-dessus va afficher :
Nombre d'arguments: 3
Exemple #2 Exemples func_num_args() avant et après PHP 5.3
test.php
<?php
function foo() {
include './fna.inc';
}
foo('Argument 1', 'Argument 2');
?>
fna.php
<?php
$num_args = func_num_args();
var_export($num_args);
?>
Sortie avant PHP 5.3:
2
L'affichage depuis PHP 5.3 ressemble à quelque chose comme :
Warning: func_num_args(): Called from the global scope - no function context in /home/torben/Desktop/code/ml/fna.inc on line 3 -1
Note:
Parce que cette fonction dépend de la portée courante pour déterminer les détails des paramètres, ils ne peuvent être utilisés en tant que paramètre d'une fonction dans les versions antérieures à 5.3.0. Si vous devez passer cette valeur, assignez les résultats à une variable et utilisez-la.