Maison >développement back-end >tutoriel php >Explication détaillée du nombre arbitraire de paramètres et exemples de fichiers de recherche de la fonction PHP
1. N'importe quel nombre de paramètres pour la fonction PHP
Vous savez peut-être que PHP vous permet de définir une fonction avec des paramètres par défaut. Mais vous ne savez peut-être pas que PHP vous permet également de définir une fonction avec des paramètres complètement arbitraires
Voici un exemple vous montrant une fonction avec des paramètres par défaut :
// 两个默认参数的函数 function foo($arg1 = '', $arg2 = '') { echo "arg1: $arg1\n"; echo "arg2: $arg2\n"; } foo('hello','world'); /* 输出: arg1: hello arg2: world */ foo(); /* 输出: arg1: arg2: */
Jetons maintenant un œil à une fonction avec des paramètres variables, utilisez la méthode func_get_args() :
// 是的,形参列表为空 function foo() { // 取得所有的传入参数的数组 $args = func_get_args(); foreach ($args as $k => $v) { echo "arg".($k+1).": $v\n"; } } foo(); /* 什么也不会输出 */ foo('hello'); /* 输出 arg1: hello */ foo('hello', 'world', 'again'); /* 输出 arg1: hello arg2: world arg3: again */
2. Glob() Rechercher des fichiers
De nombreuses fonctions PHP ont une auto-définition relativement longue. Le nom de la fonction est expliqué. , mais lorsque vous voyez glob(), vous ne savez peut-être pas à quoi sert cette fonction à moins que vous ne la connaissiez déjà.
Pouvez-vous considérer cette fonction comme bonne ? scandir() est la même, elle peut être utilisée pour rechercher des fichiers.
// 取得所有的后缀为PHP的文件 $files = glob('*.php'); print_r($files); /* 输出: Array ( [0] => phptest.php [1] => pi.php [2] => post_output.php [3] => test.php ) */
Vous pouvez également rechercher plusieurs suffixes
// 取PHP文件和TXT文件 $files = glob('*.{php,txt}', GLOB_BRACE); print_r($files); /* 输出: Array ( [0] => phptest.php [1] => pi.php [2] => post_output.php [3] => test.php [4] => log.txt [5] => test.txt ) */
Vous pouvez également ajouter le chemin :
$files = glob('../images/a*.jpg'); print_r($files); /* 输出: Array ( [0] => ../images/apple.jpg [1] => ../images/art.jpg ) */
Si vous souhaitez obtenir le chemin absolu , vous pouvez appeler la fonction ?realpath() :
$files = glob('../images/a*.jpg'); // applies the function to each array element $files = array_map('realpath',$files); print_r($files); /* output looks like: Array ( [0] => C:\wamp\www\images\apple.jpg [1] => C:\wamp\www\images\art.jpg ) */
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!